變更Win32_SystemDriver類別的方法
ChangeWMI 類別方法會修改Win32_SystemDriver服務。 Win32_LoadOrderGroup參數代表定義執行相依性的系統服務群組。 服務必須依照「載入順序群組」所指定的順序起始,因為服務彼此相依。 這些相依服務需要有前項服務才能正常運作。
本主題使用 Managed 物件格式 (MOF) 語法。 如需使用此方法的詳細資訊,請參閱 呼叫方法。
語法
uint32 Change(
[in] string DisplayName,
[in] string PathName,
[in] uint8 ServiceType,
[in] uint8 ErrorControl,
[in] string StartMode,
[in] boolean DesktopInteract,
[in] string StartName,
[in] string StartPassword,
[in] string LoadOrderGroup,
[in] string LoadOrderGroupDependencies[],
[in] string ServiceDependencies[]
);
參數
-
DisplayName [in]
-
服務的顯示名稱。 這個字串的最大長度為 256 個字元。 名稱會在服務控制管理員中保留大小寫。 DisplayName 比較一律不區分大小寫。
條件約束:接受與 Name 參數相同的值。
範例:「Atdisk」
-
PathName [in]
-
實作服務之可執行檔的完整路徑。
範例: \SystemRoot\System32\drivers\afd.sys
-
ServiceType [in]
-
提供給呼叫這些服務之進程的服務類型。
-
1 (0x1)
-
核心驅動程式
-
2 (0x2)
-
檔案系統驅動程式
-
4 (0x4)
-
配接器
-
8 (0x8)
-
辨識器驅動程式
-
16 (0x10)
-
自有進程
-
32 (0x20)
-
共用程式
-
256 (0x100)
-
互動式程式
ErrorControl [in]
如果此服務在啟動期間無法啟動,則為錯誤的嚴重性。 如果發生失敗,此值表示啟動程式所採取的動作。 系統會記錄所有錯誤。
忽略 (0)
不通知使用者。
標準 (1)
一般。 通知使用者。
嚴重 (2)
系統會以最後一個良好的組態重新開機。
重大 (3)
系統嘗試以正確的組態重新啟動。
StartMode [in]
Windows 基底服務的啟動模式。
開機啟動
作業系統載入器啟動的裝置驅動程式。
開機啟動
作業系統載入器啟動的裝置驅動程式。
系統啟動
作業系統初始化程式啟動的裝置驅動程式。 這個值只適用於驅動程式服務。
自動啟動
服務在系統啟動期間由服務控制管理員自動啟動。
需求開始
當進程呼叫 StartService 方法時,由服務控制管理員啟動的服務。
禁用
無法啟動的服務。
DesktopInteract [in]
值,如果為 True,服務可以建立或與桌面上的視窗通訊。
StartName [in]
服務執行的帳戶名稱。 視服務類型而定,帳戶名稱的格式可能是 DomainName\Username 或 .\Username。 執行時,會使用這兩種形式之一來記錄服務進程。 如果帳戶屬於內建網域,則可以指定 .\Username。 如果指定空字串,服務會以 LocalSystem 帳戶登入。 對於核心或系統層級驅動程式, StartName 包含驅動程式物件名稱,例如 \FileSystem\Rdr 或 \Driver\Xns) ,輸入與輸出 (I/O) 系統用來載入設備磁碟機。 如果指定Null,驅動程式會以 I/O 系統根據服務名稱建立的預設物件名稱執行,例如 DWDOM\管理員。
您也可以使用使用者主體名稱 (UPN) 格式來指定 StartName,例如 Username@DomainName。
StartPassword [in]
StartName參數所指定之帳戶名稱的密碼。 如果您未變更密碼,請指定 Null 。 如果此服務沒有密碼,請指定空字串。
注意
將服務從本機系統變更為網路,或從網路變更為本機系統時, StartPassword 必須是空字串 (「」) 而非 Null。
LoadOrderGroup [in]
與其相關聯的組名。 載入順序群組包含在系統登錄中,並決定將服務載入作業系統的順序。 如果指標為 Null,或指向空字串,則服務不屬於群組。 群組之間的相依性應該列在 LoadOrderGroupDependencies 參數中。 首先會啟動載入排序群組清單中的服務,後面接著不在載入排序群組清單中的服務,後面接著不屬於群組的服務。 系統登錄具有位於下列位置的載入排序群組清單:
\ HKEY_LOCAL_MACHINE系統\CurrentControlSet\控制\ServiceGroupOrder
LoadOrderGroupDependencies [in]
此服務啟動之前必須啟動的載入排序群組清單。 陣列會以 Null結尾。 如果指標為 Null,或指向空字串,則服務沒有相依性。 組名前面必須加上 WinSvc.h 檔案) 字元中所定義的 SC_GROUP_IDENTIFIER (,才能區分它們與服務名稱,因為服務和服務群組會共用相同的命名空間。 對群組的相依性表示,如果嘗試啟動群組的所有成員之後,至少有一個群組成員正在執行,則此服務可以執行。
ServiceDependencies [in]
包含此服務啟動之前必須啟動之服務名稱的清單。 陣列會以 Null結尾。 如果指標為 Null,或指向空字串,則服務沒有相依性。 對服務的相依性表示只有在相依的服務正在執行時,才能執行此服務。
傳回值
如果已成功修改服務,則傳回零 (0) ,如果不支援要求,則傳回 1 (一個) ,以及指出錯誤的任何其他數位。
-
成功 (0)
-
不支援 (1)
-
拒絕存取 (2)
-
執行 (3) 的相依服務
-
不正確服務控制 (4)
-
服務無法接受控制 (5)
-
服務非作用 中 (6)
-
服務要求逾 時 (7)
-
未知的失敗 (8)
-
找不到路徑 (9)
-
服務已執行 (10)
-
服務資料庫鎖定 (11)
-
服務相依性已刪除 (12)
-
服務相依性失敗 (13)
-
服務停用 (14)
-
服務登入失敗 (15)
-
標示為刪除的服務 (16)
-
服務無線程 (17)
-
狀態迴圈相依性 (18)
-
狀態重複名稱 (19)
-
狀態無效 ( 20)
-
狀態不正確參數 (21)
-
狀態不正確服務帳戶 (22)
-
狀態服務存在 (23)
-
服務已暫停 (24)
-
其他 (25 4294967295)
備註
若要將服務從網路服務變更為本機系統,請使用 StartName 和 StartPassword 參數的下列值:
StartName = "LocalSystem"
StartPassword = "" // - empty string, not NULL
若要將服務從本機系統服務變更為網路服務,請使用 StartName 和 StartPassword 參數的下列值:
StartName = "NT AUTHORITY\NetworkService"
StartPassword = "" // - empty string, not NULL
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista |
最低支援的伺服器 |
Windows Server 2008 |
命名空間 |
Root\CIMV2 |
標頭 |
|
MOF |
|
DLL |
|