Win32_OperatingSystem クラスの Win32ShutdownTracker メソッド
Win32ShutdownTracker メソッドは、Win32_OperatingSystemの Win32Shutdown メソッドでサポートされているシャットダウン オプションと同じセットを提供しますが、コメント、シャットダウンの理由、タイムアウトを指定することもできます。
構文
uint32 Win32ShutdownTracker(
[in] uint32 Timeout,
[in] string Comment,
[in] uint32 ReasonCode,
[in] sint32 Flags
);
パラメーター
-
タイムアウト [入力]
-
シャットダウンが行われる前の時間 (秒単位)。 既定値は 0 (ゼロ) です。
-
コメント [入力]
-
シャットダウン ダイアログ ボックスに表示するメッセージ。イベント ログ エントリにもコメントとして格納されます。
-
ReasonCode [in]
-
シャットダウンを開始する理由。
-
Flags [in]
-
コンピューターをシャットダウンするためのフラグのビットマップ セット。 コマンドを強制するには、Force フラグ (4) をコマンド値に追加します。 Force をリモート コンピューターでシャットダウンまたは再起動と組み合わせて使用すると、すべての機能 (WMI、COM など) が直ちにシャットダウンされるか、リモート コンピューターが再起動されます。 これにより、不確定な戻り値が返されます。
-
0 (0x0)
-
ログオフ
-
4 (0x4)
-
強制ログオフ (0 + 4)
-
1 (0x1)
-
Shutdown
-
5 (0x5)
-
強制シャットダウン (1 + 4)
-
2 (0x2)
-
再起動
-
6 (0x6)
-
強制再起動 (2 + 4)
-
8 (0x8)
-
電源オフ
-
12 (0xC)
-
強制電源オフ (8 + 4)
戻り値
成功を示す 0 を返します。 それ以外の数値はエラーを示します。 エラー コードについては、「 WMI エラー定数 」または 「WbemErrorEnum」を参照してください。 一般的な HRESULT 値については、「 システム エラー コード」を参照してください。
-
成功 (0)
-
その他 (1 ~ 4294967295)
注釈
呼び出し元プロセスには 、SE_SHUTDOWN_NAME 特権が必要です。
例
次の VBScript コード サンプルでは、 Win32ShutdownTracker を呼び出す方法について説明します。
Set objArgs = Wscript.Arguments
intTimeOut = objArgs(0) 'Countdown time (in seconds) before action
strComment = objArgs(1) 'Message to display
intFlags = objArgs(2) 'Set of flags to shutdown the computer:
'0 = Logoff, 4 = Forced Logoff (0+4), 1 = Shutdown, 2 = Reboot, 6 = Forced Reboot (2+4), 8 = Power Off, 12 = Forced Power Off (8+4) - 2 (Reboot)
strComputer = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
objOperatingSystem.Win32ShutdownTracker intTimeOut,strComment,0,intFlags
Next
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
名前空間 |
Root\CIMV2 |
MOF |
|
[DLL] |
|
こちらもご覧ください