Partilhar via


Método de IHostSecurityManager::SetSecurityContext

Define o contexto de segurança do thread em execução no momento.

HRESULT SetSecurityContext (
    [in]  EContextType eContextType,
    [out] IHostSecurityContext** ppSecurityContext
);

Parâmetros

  • eContextType
    [in] Dentre as EContextType valores, que indica o tipo de contexto o common language runtime (CLR) está colocando no host.

  • ppSecurityContext
    [out] Um ponteiro para o endereço de uma nova IHostSecurityContext objeto.

Valor de retorno

HRESULT

Descrição

S_OK

SetSecurityContextretornado com êxito.

HOST_E_CLRNOTAVAILABLE

O CLR não foi carregado em um processo ou o CLR é em um estado em que ele não é possível executar código gerenciado ou processar a chamada com êxito.

HOST_E_TIMEOUT

A chamada foi esgotado.

HOST_E_NOT_OWNER

O chamador não possui o bloqueio.

HOST_E_ABANDONED

Um evento foi cancelado, enquanto um segmento bloqueado ou fibra estava esperando por ele.

E_FAIL

Ocorreu uma falha catastrófica desconhecida. Quando um método retorna E_FAIL, o CLR não é usável dentro do processo. As chamadas subseqüentes para hospedar os métodos retornam HOST_E_CLRNOTAVAILABLE.

Comentários

As chamadas CLR SetSecurityContext em vários cenários. Antes de ele executa os finalizadores e classe e construtores de módulo, o CLR chama SetSecurityContext para proteger o host de falhas de execução. Ele então redefine o contexto de segurança ao seu estado original após a execução do finalizador, ou construtor usando outra chamada para SetSecurityContext. Um padrão semelhante ocorre com a conclusão de e/S. Se o host implementa IHostIoCompletionManager, as chamadas CLR SetSecurityContext após as chamadas de host ICLRIoCompletionManager::OnComplete.

Em pontos assíncronos threads de trabalho, o CLR chama SetSecurityContext em ThreadPool.QueueUserWorkItem ou dentro de IHostThreadPoolManager::QueueUserWorkItem, dependendo de se o host ou o CLR está implementando o pool de segmentos.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso em mscoree

.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Consulte também

Referência

Enumeração de EContextType

Interface de ICLRIoCompletionManager

Interface de IHostIoCompletionManager

Interface de IHostSecurityContext

Interface de IHostSecurityManager

Interface de IHostThreadPoolManager

System.Threading.ThreadPool