Windows XP には、Explorer プロセス内から Status 動詞を呼び出す必要があるというバグがあります。WScript/CScript は Explorer プロセスの子ではないため、明らかなエラーがないにもかかわらず、ステータス動詞を呼び出そうとしても無駄です。以下のスクリプトがテストされ、Vista x64 で動作するため、このバグは後のバージョンで修正されたようです。
Set objShell = CreateObject("Shell.Application")
Set objShellFolder = objShell.Namespace(0).ParseName("::{7007ACC7-3202-11D1-AAD2-00805FC1270E}").GetFolder
For Each objShellFolderItem in objShellFolder.Items
Set colShellFolderItemVerbs = objShellFolderItem.Verbs
For Each objShellFolderItemVerb in colShellFolderItemVerbs
strVerb = objShellFolderItemVerb.Name
If (strVerb = "C&onnect / Disconnect") Then
objShellFolderItem.InvokeVerb("Properties")
objShellFolderItem.InvokeVerb("Status")
MsgBox "Press OK to close and exit"
WScript.Quit(0)
End If
Next
Next
オプション1
それはあなたが運が悪いということですか?完全ではありません。2 つの異なる提案があります。最初は少しトリックを使用します。ステータスは、ネットワーク接続が接続状態にあるときのデフォルト アクションです。ネットワーク接続を開き、監視する接続を右クリックして、[ショートカットの作成] を選択します。ショートカットは好きな場所に配置できます。デフォルトでは、デスクトップに「ワイヤレス ネットワーク接続 - Shortcut.lnk」のような名前が付けられます。コマンド ラインで入力するか、スクリプトの Run または Exec メソッドを介して入力すると、必要なことが正確に実行されます。スクリプトを使用してこれをすべて試してみましたが、ショートカットの作成動詞を自動化しようとすると問題が発生しました。
オプション 2
2 番目のオプションもちょっとした回避策ですが、3G 接続がダイヤルアップ ネットワークを使用している場合は機能する可能性があります。コマンド ラインrundll32.exe rnaui.dll,RnaDial {name of connection to establish}
は接続するためのダイアログを開きますが、既に接続されている場合は、接続の [ステータス] ダイアログを開きます。次に、次のようなスクリプトを試すことができます。
Set objShell = CreateObject("Shell.Application")
Set objShellFolder = objShell.Namespace(0).ParseName("::{7007ACC7-3202-11D1-AAD2-00805FC1270E}").GetFolder
For Each objShellFolderItem in objShellFolder.Items
strConnection = objShellFolderItem.Name
strCommandLine = "rundll32.exe rnaui.dll,RnaDial " & Chr(34) & strConnection & Chr(34)
Set colShellFolderItemVerbs = objShellFolderItem.Verbs
For Each objShellFolderItemVerb in colShellFolderItemVerbs
strVerb = objShellFolderItemVerb.Name
If (strVerb = "C&onnect / Disconnect") Then
objShellFolderItem.InvokeVerb("Properties")
CreateObject("WScript.Shell").Run strCommandLine
MsgBox "Press OK to close and exit"
WScript.Quit(0)
End If
Next
Next
オプション 3
最後のオプションは、WMI を使用してネットワーク接続に関する情報を表示することです。これは、より伝統的なスクリプト アプローチです。
いずれにせよ、これが役立つことを願っています。必要に応じて動詞を変更することを忘れないでください。それらは、Windows のあるバージョンから次のバージョンに変更されます。