OpenThread 関数 (processthreadsapi.h)
既存のスレッド オブジェクトを開きます。
構文
HANDLE OpenThread(
[in] DWORD dwDesiredAccess,
[in] BOOL bInheritHandle,
[in] DWORD dwThreadId
);
パラメーター
[in] dwDesiredAccess
スレッド オブジェクトへのアクセス。 このアクセス権は、スレッドのセキュリティ記述子に対してチェックされます。 このパラメーターには、1 つ以上の スレッド アクセス権を指定できます。
呼び出し元が SeDebugPrivilege 特権を有効にした場合、要求されたアクセスは、セキュリティ記述子の内容に関係なく付与されます。
[in] bInheritHandle
この値が TRUE の場合、このプロセスによって作成されたプロセスはハンドルを継承します。 それ以外の場合、プロセスはこのハンドルを継承しません。
[in] dwThreadId
開くスレッドの識別子。
戻り値
関数が成功した場合、戻り値は指定されたスレッドへの開いているハンドルです。
関数が失敗した場合は、返される値は NULL です。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
OpenThread によって返されるハンドルは、適切なアクセス権を要求した場合に、待機関数などのスレッドへのハンドルを必要とする任意の関数で使用できます。 ハンドルには、 dwDesiredAccess パラメーターで指定されたエクステントに対してのみ、スレッド オブジェクトへのアクセス権が付与されます。
ハンドルが完成したら、 CloseHandle 関数を使用して閉じておきます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | processthreadsapi.h (Windows Server 2003、Windows Vista、Windows 7、Windows Server 2008 Windows Server 2008 R2 の Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |