次の方法で共有


CoGetCallerTID 関数 (combaseapi.h)

呼び出し元のスレッドのアパートメント ID を含む DWORD へのポインターを返します。

構文

HRESULT CoGetCallerTID(
  [out] LPDWORD lpdwTID
);

パラメーター

[out] lpdwTID

呼び出し元のスレッドのアパートメント ID を受け取ります。 シングル スレッド アパートメント (STA) の場合、これは現在のスレッド ID です。 マルチスレッド アパートメント (MTA) の場合、値は 0 です。 ニュートラル アパートメント (NA) の場合、値は -1 です。

戻り値

この関数は、次の値を返すことができます。

リターン コード 説明
S_TRUE
呼び出し元のスレッド ID が設定され、呼び出し元が同じプロセス内にあります。
S_FALSE
呼び出し元のスレッド ID が設定され、呼び出し元が別のプロセスに入っている。
E_OUTOFMEMORY
呼び出し元のスレッド ID が設定されていません。

解説

呼び出し元が同じコンピューターで実行されていない場合、この関数はアパートメント ID を返せず、戻り値はS_FALSE。

この API から返される情報が改ざんされないことは保証されないため、返される ID を使用してセキュリティ上の決定を行わないでください。 ID は、ログ記録と診断の目的でのみ使用できます。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー combaseapi.h (Objbase.h を含む)
Library Ole32.lib
[DLL] Ole32.dll