Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select * from Win32_PingStatus where address = 'google.com'")
For Each objStatus in objPing
If objStatus.StatusCode = 0 Then
WScript.Echo "インターネット接続が正常です。"
Else
WScript.Echo "インターネット接続に問題があります。エラーコード: " & objStatus.StatusCode
End If
Next
このコードでは、Win32_PingStatus
クラスを使用して google.com
に対して ping を送信し、応答ステータスコードをチェックします。ステータスコードが 0 の場合、インターネット接続は正常であると判断します。それ以外の場合は、エラーメッセージとステータスコードが表示されます。
さらに、エラーメッセージを表示するだけでなく、エラーハンドリングを追加してもよいでしょう。以下に例を示します。
On Error Resume Next
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select * from Win32_PingStatus where address = 'google.com'")
If Err.Number <> 0 Then
WScript.Echo "エラーが発生しました。エラーコード: " & Err.Number
Else
For Each objStatus in objPing
If objStatus.StatusCode = 0 Then
WScript.Echo "インターネット接続が正常です。"
Else
WScript.Echo "インターネット接続に問題があります。エラーコード: " & objStatus.StatusCode
End If
Next
End If
On Error GoTo 0
On Error Resume Next
ステートメントを使用して、エラーが発生した場合でもスクリプトが続行されるようにしています。エラーが発生した場合、Err.Number
にエラーコードが格納されます。エラーメッセージとエラーコードを表示することで、問題の特定とトラブルシューティングが容易になります。
このようにVBScriptを使用することで、インターネット接続の確認とエラー処理を簡単かつ効果的に行うことができます。