Win32_OperatingSystem 類別的 Shutdown 方法

ShutdownWMI 類別方法會卸載程式和 DLL,直到關閉電腦安全性為止。

本主題使用 Managed 物件格式 (MOF) 語法。 如需使用此方法的詳細資訊,請參閱 呼叫方法

語法

uint32 Shutdown();

參數

這個方法沒有任何參數。

傳回值

傳回零 (0) 表示成功。 任何其他數字表示發生錯誤。 如需錯誤碼,請參閱 WMI 錯誤常數WbemErrorEnum。 如需一般 HRESULT 值,請參閱 系統錯誤碼

成功 (0)

其他 (1 4294967295)

備註

電腦偶爾需要從網路移除,可能是因為電腦無法正常運作或完成設定程式,所以可能需要排程維護。 例如,如果 DHCP 伺服器送出錯誤的 IP 位址,您可能會想要關閉電腦,直到服務技術人員可以分派以修正問題為止。 如果您懷疑發生安全性缺口,您可能需要關閉特定伺服器,以確保在安全性問題解決之前無法存取這些伺服器。 某些組態作業 (例如變更電腦名稱稱) 要求您在變更生效之前重新開機電腦。

如果可能,這個方法會立即關閉電腦。 系統會停止所有執行中的進程、將所有檔案緩衝區排清到磁片,然後關閉系統。 呼叫進程必須具有 SE_SHUTDOWN_NAME 許可權,如下列範例所述。

Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")

如需設定許可權的詳細資訊,請參閱使用 VBScript 執行特殊許可權作業和執行特殊許可權作業 如需其他關機選項,例如登出或強制關機,請參閱 Win32Shutdown 方法。

範例

下列 VBScript 程式碼會關閉本機電腦。

注意

您必須具有 Shutdown 許可權,才能成功叫用 Shutdown 方法。

Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")

for each OpSys in OpSysSet
 OpSys.Shutdown()
next

下列 Perl 程式碼會關閉本機電腦。

注意

您必須具有 Shutdown 許可權,才能成功叫用 Shutdown 方法。

use strict;
use Win32::OLE;

my $OpSysSet;

eval { $OpSysSet = Win32::OLE->GetObject("winmgmts:{(Shutdown)}//./root/cimv2")->
      ExecQuery("SELECT * FROM Win32_OperatingSystem WHERE Primary=true"); };

if(!$@ && defined $OpSysSet)
{
 close (STDERR);
 foreach my $OpSys (in $OpSysSet)
 {
  my $RetVal = $OpSys->Shutdown();
  if (!defined $RetVal || $RetVal != 0)
  { 
   print Win32::OLE->LastError, "\n";
  }
 }
}
else
{
 print STDERR Win32::OLE->LastError, "\n";
}

下列 VBScript 程式碼會關閉指定的遠端電腦。 以要關機的遠端系統名稱填入 REMOTE_SYSTEM_NAME

注意

您必須具有 RemoteShutdown 許可權,才能成功叫用 Shutdown 方法。

Set OpSysSet = GetObject("winmgmts:{(Debug,RemoteShutdown)}//REMOTE_SYSTEM_NAME/root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")

for each OpSys in OpSysSet
 OpSys.Shutdown()
next

規格需求

需求
最低支援的用戶端
Windows Vista
最低支援的伺服器
Windows Server 2008
命名空間
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

另請參閱

作業系統類別

Win32_OperatingSystem

WMI 工作:桌面管理

使用 VBScript 執行特殊許可權作業