Methode IHostSecurityManager::SetSecurityContext
Hiermee stelt u de beveiligingscontext in van de thread die momenteel wordt uitgevoerd.
Syntaxis
HRESULT SetSecurityContext (
[in] EContextType eContextType,
[out] IHostSecurityContext** ppSecurityContext
);
Parameters
eContextType
[in] Een van de EContextType-waarden , waarmee wordt aangegeven welk type context de Common Language Runtime (CLR) op de host plaatst.
ppSecurityContext
[uit] Een aanwijzer naar het adres van een nieuw IHostSecurityContext-object .
Retourwaarde
HRESULT | Beschrijving |
---|---|
S_OK | SetSecurityContext is geretourneerd. |
HOST_E_CLRNOTAVAILABLE | De CLR is niet geladen in een proces of de CLR bevindt zich in een status waarin beheerde code niet kan worden uitgevoerd of de aanroep kan worden verwerkt. |
HOST_E_TIMEOUT | Er is een time-out opgetreden voor het gesprek. |
HOST_E_NOT_OWNER | De beller is niet de eigenaar van het vergrendelingsslot. |
HOST_E_ABANDONED | Een gebeurtenis is geannuleerd terwijl er een geblokkeerde thread of vezel op wachtte. |
E_FAIL | Er is een onbekende catastrofale fout opgetreden. Wanneer een methode E_FAIL retourneert, is de CLR niet meer bruikbaar binnen het proces. Volgende aanroepen naar hostingmethoden retourneren HOST_E_CLRNOTAVAILABLE. |
Opmerkingen
De CLR roept SetSecurityContext
in verschillende scenario's aan. Voordat klasse- en moduleconstructors en finalizers worden uitgevoerd, roept SetSecurityContext
de CLR aan om de host te beschermen tegen uitvoeringsfouten. Vervolgens wordt de oorspronkelijke status van de beveiligingscontext na uitvoering van de constructor of finalizer opnieuw ingesteld met behulp van een andere aanroep van SetSecurityContext
. Een vergelijkbaar patroon treedt op bij I/O-voltooiing. Als de host IHostIoCompletionManager implementeert, roept SetSecurityContext
de CLR aan nadat de host ICLRIoCompletionManager::OnComplete aanroept.
Op asynchrone punten in werkthreads roept SetSecurityContext
de CLR aan binnen of binnen ThreadPool.QueueUserWorkItemIHostThreadPoolManager::QueueUserWorkItem, afhankelijk van of de host of de CLR de threadgroep implementeert.
Vereisten
Platforms: Zie Systeemvereisten.
Header: MSCorEE.h
Bibliotheek: Opgenomen als een resource in MSCorEE.dll
.NET Framework versies: beschikbaar sinds 2.0