ホーム › System.RemoteManagement › WSMAN_PLUGIN_SHUTDOWN
WSMAN_PLUGIN_SHUTDOWN
コールバックシグネチャ
DWORD WSMAN_PLUGIN_SHUTDOWN(
void* pluginContext,
DWORD flags,
DWORD reason
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| pluginContext | void* | WSManPluginStartup メソッドの呼び出しによって返されたコンテキストを指定します。このパラメーターは、WinRM プラグインの特定のアプリケーション初期化を表します。シャットダウン エントリ ポイントは、初期化を行ったアプリケーションごとに呼び出されます。 |
| flags | DWORD | 将来の使用のために予約されています。ゼロに設定する必要があります。 |
| reason | DWORD | プラグインがシャットダウンする理由を指定します。 WSMAN_PLUGIN_SHUTDOWN_SYSTEMシステムがシャットダウンしました。 WSMAN_PLUGIN_SHUTDOWN_SERVICEWinRM サービスがシャットダウンしました。 WSMAN_PLUGIN_SHUTDOWN_IISHOSTIIS ホストがシャットダウンしました。 |
公式ドキュメント
プラグインのシャットダウン コールバックを定義します。この関数は、すべての操作がキャンセルされた後、Windows リモート管理プラグイン DLL がアンロードされる前に呼び出されます。すべての WinRM プラグインは、このコールバック関数を実装する必要があります。
DLL のエントリ ポイント名は WSManPluginShutdown でなければなりません。
戻り値
解説(Remarks)
WSManPluginStartup の呼び出しが成功するたびに、WinRM プラグイン DLL がアンロードされる前にこの関数が呼び出されます。プラグインが早期にシャットダウンされないように、WinRM プラグイン側でこのスタートアップ エントリ ポイントが呼び出された回数を追跡することが重要です。
この関数は、戻る前にすべてのプラグイン スレッドがシャットダウンされていることを保証する必要があります。プラグインが同期操作のみを処理し、すべてのスレッドが戻る前にキャンセル結果を報告する場合、この関数はプラグインのクリーンアップのみを実行します。ただし非同期プラグインの場合は、すべての操作のキャンセルを報告したばかりのスレッドを含め、プラグインの処理に使用されるすべてのスレッドを完全にシャットダウンする必要があります。すべてのスレッドがシャットダウンされていないと、DLL がアンロードされた後にコードが実行される可能性があるため、DLL でクラッシュが発生するおそれがあります。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)