共用方式為


IHostSecurityManager::OpenThreadToken 方法

開啟與目前執行中執行緒相關聯的任意存取權杖。

語法

HRESULT OpenThreadToken (  
    [in]  DWORD    dwDesiredAccess,
    [in]  BOOL     bOpenAsSelf,
    [out] HANDLE   *phThreadToken  
);  

參數

dwDesiredAccess
[in] 存取值的遮罩,指定執行緒權杖的存取要求類型。 這些值定義於 Win32 OpenThreadToken 語言函式中。 要求的存取類型會根據權杖的任意存取控制清單 (DACL) 進行協調,以判斷要授與或拒絕的存取類型。

bOpenAsSelf
[in] true 表示應該使用呼叫執行緒流程的安全性內容進行存取檢查;false 指定應該使用呼叫執行緒本身的安全性內容來執行存取檢查。 如果執行緒正在模擬用戶端,則安全性內容可以是用戶端流程的安全性內容。

phThreadToken
[out] 新開啟存取權杖的指標。

傳回值

HRESULT 描述
S_OK OpenThreadToken 已成功傳回。
HOST_E_CLRNOTAVAILABLE 通用語言執行平台 (CLR) 尚未載入處理序,或 CLR 處於無法成功執行受控程式碼或處理呼叫的狀態。
HOST_E_TIMEOUT 呼叫逾時。
HOST_E_NOT_OWNER 呼叫端未擁有鎖定。
HOST_E_ABANDONED 封鎖的執行緒或 Fiber 在其上等候時,事件遭到取消。
E_FAIL 發生未知的重大失敗。 如果方法傳回 E_FAIL,則 CLR 就無法再用於處理序。 後續對裝載方法發出的呼叫會傳回 HOST_E_CLRNOTAVAILABLE。

備註

IHostSecurityManager::OpenThreadToken 行為類似於相同名稱的對應 Win32 語言函式,不同之處在於 Win32 語言函式可讓呼叫者傳入任意執行緒的控制代碼,同時 IHostSecurityManager::OpenThreadToken 只開啟與呼叫執行緒相關聯的權杖。

HANDLE 類型不符合 COM 規範,也就是其大小是作業系統特有的,而且需要自訂封送處理。 因此,此權杖僅適用於 CLR 與主機之間的流程內。

規格需求

平台:請參閱系統需求

標題: MSCorEE.h

程式庫:包含作為 MSCorEE.dll 中的資源

.NET Framework版本:自 2.0 起提供

另請參閱