C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 58 を表示中)
■33212 / )  Re[7]: vbscriptのメソッド名
□投稿者/ ちゅき (28回)-(2009/02/23(Mon) 12:38:46)
2009/02/23(Mon) 21:26:32 編集(投稿者)

なんとなく、VBScript自体が作成されたものではなく、コピペのような気がしてイロイロ怖いのですが、3パターン記述してみました。

1)IPアドレス決め打ち
Set objWMIService = GetObject("winmgmts:\\.")
Set PingSet = objWMIService.ExecQuery ("Select * From Win32_PingStatus Where Address = '192.168.1.1'")

For Each Ping In PingSet

Select Case Ping.StatusCode
Case 0
MsgBox "Success"
Case 11010
MsgBox "Request Timed Out"
Case Else
MsgBox "エラー"
End Select

Next

2)同一ファイル内からの呼び出し
'【呼び出し元】
MsgBox cmd("192.168.1.1")
'【呼び出し先】
function cmd(szIPAddr)
Set objWMIService = GetObject("winmgmts:\\.")
Set PingSet = objWMIService.ExecQuery ("Select * From Win32_PingStatus Where Address = '" & szIPAddr & "'")

For Each Ping In PingSet

Select Case Ping.StatusCode
Case 0
cmd = "Success"
Case 11010
cmd = "Request Timed Out"
Case Else
cmd = "エラー"
End Select

Next
end function

【他ファイルからの呼び出し】
'【呼び出し元】
CScript filenameHogeHoge.vbs "192.168.1.1"
'【呼び出し先】
szIPAddr = WScript.Arguments(0)

Set objWMIService = GetObject("winmgmts:\\.")
Set PingSet = objWMIService.ExecQuery ("Select * From Win32_PingStatus Where Address = '" & szIPAddr & "'")

For Each Ping In PingSet

Select Case Ping.StatusCode
Case 0
cmd = "Success"
Case 11010
cmd = "Request Timed Out"
Case Else
cmd = "エラー"
End Select
MsgBox cmd
Next

返信 編集キー/


管理者用

- Child Tree -