2009年8月16日日曜日

ScriptomとWMIでサービスと実装バイナリのパスを取得する

ScriptomとWMIでサービスと実装バイナリのパスを取得するには、以下のコードを実行します。


import org.codehaus.groovy.scriptom.*;

Scriptom.inApartment
{
locator = new ActiveXObject("WbemScripting.SWbemLocator")
service = locator.ConnectServer()
services = service.ExecQuery(
"select * from Win32_BaseService where displayName = 'DHCP Client'")

for(service in services){
// サービス名とサービスを実装するバイナリファイルのパスを取得
println(service.displayName + ":" + service.pathName);
}
}


実行結果

DHCP Client:C:\WINDOWS\system32\svchost.exe -k netsvcs


動作環境
JDK6 Update14, groovy1.6.3

関連情報
http://msdn.microsoft.com/en-us/library/aa394073%28VS.85%29.aspx

0 件のコメント:

コメントを投稿