IHostSecurityManager::SetSecurityContext — Metoda
Ustawia kontekst zabezpieczeń aktualnie wykonywanego wątku.
Składnia
HRESULT SetSecurityContext (
[in] EContextType eContextType,
[out] IHostSecurityContext** ppSecurityContext
);
Parametry
eContextType
[w] Jedna z wartości EContextType wskazująca, jakiego typu kontekstu umieszcza środowisko uruchomieniowe języka wspólnego (CLR) na hoście.
ppSecurityContext
[out] Wskaźnik na adres nowego obiektu IHostSecurityContext .
Wartość zwracana
HRESULT | Opis |
---|---|
S_OK | SetSecurityContext zwrócono pomyślnie. |
HOST_E_CLRNOTAVAILABLE | ClR nie został załadowany do procesu lub CLR jest w stanie, w którym nie może uruchomić kodu zarządzanego ani pomyślnie przetworzyć wywołania. |
HOST_E_TIMEOUT | Upłynął limit czasu wywołania. |
HOST_E_NOT_OWNER | Obiekt wywołujący nie jest właścicielem blokady. |
HOST_E_ABANDONED | Zdarzenie zostało anulowane, gdy zablokowany wątek lub światłowod czekał na nie. |
E_FAIL | Wystąpił nieznany katastrofalny błąd. Gdy metoda zwraca E_FAIL, clR nie będzie już można używać w ramach tego procesu. Kolejne wywołania metod hostingu zwracają HOST_E_CLRNOTAVAILABLE. |
Uwagi
ClR wywołuje w SetSecurityContext
kilku scenariuszach. Przed wykonaniem konstruktorów klas i modułów i finalizatorów clR wywołuje funkcję SetSecurityContext
ochrony hosta przed niepowodzeniami wykonywania. Następnie resetuje kontekst zabezpieczeń do oryginalnego stanu po wykonaniu konstruktora lub finalizatora przy użyciu innego wywołania do SetSecurityContext
. Podobny wzorzec występuje z uzupełnianiem we/wy. Jeśli host implementuje IHostIoCompletionManager, clR wywołuje SetSecurityContext
po wywołaniu hosta ICLRIoCompletionManager::OnComplete.
W punktach asynchronicznych w wątkach roboczych środowisko CLR wywołuje SetSecurityContext
pulę wątków lub w obrębie ThreadPool.QueueUserWorkItemelementu IHostThreadPoolManager::QueueUserWorkItem, w zależności od tego, czy host, czy clR implementuje pulę wątków.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: MSCorEE.h
Biblioteki: Uwzględnione jako zasób w MSCorEE.dll
.NET Framework wersje: dostępne od wersji 2.0