WSMAN_PLUGIN_SHUTDOWN Rückruffunktion (wsman.h)
Definiert den Rückruf zum Herunterfahren für das Plug-In. Diese Funktion wird aufgerufen, nachdem alle Vorgänge abgebrochen wurden und bevor die Windows-Remoteverwaltungs-Plug-In-DLL entladen wird. Alle WinRM-Plug-Ins müssen diese Rückruffunktion implementieren.
Der Name des DLL-Einstiegspunkts muss WSManPluginShutdown sein.
Syntax
WSMAN_PLUGIN_SHUTDOWN WsmanPluginShutdown;
DWORD WsmanPluginShutdown(
PVOID pluginContext,
DWORD flags,
DWORD reason
)
{...}
Parameter
pluginContext
Gibt den Kontext an, der durch einen Aufruf der WSManPluginStartup-Methode zurückgegeben wurde. Dieser Parameter stellt eine bestimmte Anwendungsinitialisierung eines WinRM-Plug-Ins dar. Der Einstiegspunkt für das Herunterfahren wird für jede Anwendung aufgerufen, die ihn initialisiert hat.
flags
Für die zukünftige Verwendung reserviert. Muss auf 0 (null) festgelegt werden.
reason
Gibt den Grund an, warum das Plug-In heruntergefahren wird.
WSMAN_PLUGIN_SHUTDOWN_SYSTEM
Das System wird heruntergefahren.
WSMAN_PLUGIN_SHUTDOWN_SERVICE
Der WinRM-Dienst wird heruntergefahren.
WSMAN_PLUGIN_SHUTDOWN_IISHOST
Der IIS-Host wurde heruntergefahren.
Rückgabewert
Die Methode gibt NO_ERROR zurück, wenn sie erfolgreich war. Andernfalls wird ein Fehlercode zurückgegeben.
Hinweise
Jeder erfolgreiche Aufruf von WSManPluginStartup führt zu einem Aufruf dieser Funktion, bevor die WinRM-Plug-In-DLL entladen wird. Es ist wichtig sicherzustellen, dass das WinRM-Plug-In die Häufigkeit nachverfolgt, mit der dieser Starteinstiegspunkt aufgerufen wird, sodass das Plug-In nicht vorzeitig heruntergefahren wird.
Diese Funktion muss sicherstellen, dass alle Plug-In-Threads heruntergefahren werden, bevor sie zurückgegeben wird. Wenn das Plug-In nur synchrone Vorgänge verarbeitet und alle Threads ein Abbruchergebnis melden, bevor sie zurückgegeben werden, führt diese Funktion nur Plug-In-Cleanup aus. Für ein asynchrones Plug-In müssen jedoch alle Threads, die zum Verarbeiten der Plug-In-Threads verwendet werden, einschließlich der Threads, die gerade den Abbruch für alle Vorgänge gemeldet haben, vollständig heruntergefahren werden. Wenn nicht alle Threads heruntergefahren werden, können Abstürze in der DLL auftreten, da Code möglicherweise ausgeführt wird, nachdem die DLL entladen wurde.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 |
Zielplattform | Windows |
Kopfzeile | wsman.h |
Verteilbare Komponente | Windows Management Framework unter Windows Server 2008 mit SP2, und Windows Vista mit SP2 |