次の方法で共有


WSMAN_PLUGIN_SIGNAL コールバック関数 (wsman.h)

プラグインのシグナル コールバックを定義します。 この関数は、クライアント呼び出しから受信シグナルを受信したときに呼び出されます。

このメソッドの DLL エントリ ポイント名は WSManPluginSignal である必要があります。

構文

WSMAN_PLUGIN_SIGNAL WsmanPluginSignal;

void WsmanPluginSignal(
  [in]           WSMAN_PLUGIN_REQUEST *requestDetails,
  [in]           DWORD flags,
  [in]           PVOID shellContext,
  [in, optional] PVOID commandContext,
  [in]           PCWSTR code
)
{...}

パラメーター

[in] requestDetails

要求 のリソース URI、オプション、ロケール、シャットダウン フラグ、およびハンドルを指定するWSMAN_PLUGIN_REQUEST構造体へのポインター。

[in] flags

将来利用するために予約されています。 ゼロを指定してください。

[in] shellContext

シェルの作成時に受信したコンテキストを指定します。

[in, optional] commandContext

この要求がシェルではなくコマンドを対象としている場合、これは winrm 作成 操作から返されるコンテキストです。それ以外の場合、このパラメーターは NULL です

[in] code

クライアントから受信するシグナルを指定します。 次のコードは一般的です。

WSMAN_SIGNAL_SHELL_CODE_TERMINATE

シェルまたはコマンド プロンプト ウィンドウが閉じられました。 プラグインは 、WSManPluginOperationComplete 関数を呼び出す必要があります。

WSMAN_SIGNAL_SHELL_CODE_CTRL_C

Ctrl + C のシグナルが受信され、プロセスが停止しました。 プラグインは 、WSManPluginOperationComplete 関数を呼び出す必要があります。

WSMAN_SIGNAL_SHELL_CODE_CTRL_BREAK

Ctrl + BREAK のシグナルを受信し、プロセスが停止しました。 プラグインは 、WSManPluginOperationComplete 関数を呼び出す必要があります。

戻り値

なし

解説

シグナルは、Ctrl + C シーケンスまたは他の多くの種類のカスタム信号の 1 つを処理するために受信できます。 コールバックは、受信したシグナルごとに 1 回呼び出されます。 プラグインは、コマンドやシェルをシャットダウンする原因となるシグナルを決定します。 シグナルはシェル固有であるため、プラグインは WSManPluginOperationComplete メソッドを呼び出してシャットダウンを開始する必要があります。 呼び出しごとに、プラグインは WSManPluginOperationComplete を呼び出して受信確認を行い、次のシグナルの受信を許可する必要があります。

要件

要件
サポートされている最小のクライアント Windows 7
サポートされている最小のサーバー Windows Server 2008 R2
対象プラットフォーム Windows
ヘッダー wsman.h
再頒布可能パッケージ Windows Server 2008 SP2 と Windows Vista と SP2 のWindows Management Framework