2009年06月19日


VBScript : WMIでローカルPCのサービス開始


' 管理者として実行を強制する
Set obj = Wscript.CreateObject("Shell.Application")
if Wscript.Arguments.Count = 0 then
	obj.ShellExecute "cscript.exe", WScript.ScriptFullName & " runas", "", "runas", 1
	Wscript.Quit
end if

' ローカルコンピュータの WMI オブジェクトを取得
str = "winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2"
Set objWMIService = GetObject( str )

' 対象サービスを取得
Query = "Select * from Win32_Service where Name='Spooler'"
Set colServiceList = objWMIService.ExecQuery(Query) 

' サービス開始
For each objService in colServiceList 
	errReturn = objService.StartService()
Next

Wscript.Echo errReturn

errReturn は以下の内容が戻されます
Return codeDescription
0Success
1Not Supported
2Access Denied
3Dependent Services Running
4Invalid Service Control
5Service Cannot Accept Control
6Service Not Active
7Service Request Timeout
8Unknown Failure
9Path Not Found
10Service Already Running
11Service Database Locked
12Service Dependency Deleted
13Service Dependency Failure
14Service Disabled
15Service Logon Failure
16Service Marked For Deletion
17Service No Thread
18Status Circular Dependency
19Status Duplicate Name
20Status Invalid Name
21Status Invalid Parameter
22Status Invalid Service Account
23Status Service Exists
24Service Already Paused


関連する記事

コマンドプロンプトからサービス開始


関連する Microsoft ドキュメント

サービスおよびその依存サービスの開始
StartService Method of the Win32_Service Class


タグ:サービス WMI
posted by at 2009-06-19 10:14 | WMI | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。