無線LANとネットワークドライブ

DHCPも関係あるかも知れないが。
どーも無線LANでの接続が確立する前にネットワークドライブの割り当てを行おうとするらしく、起動直後はいつも「割り当てに失敗しました」となる。

ので、Ping応答を確認後に割り当てるVBScriptを作成した。

環境はWindows Vista XP2。


Option Explicit

Const COMPUTER = “ComputerName”
Const FOLDER = “\Shared\Folder”
Const DRIVE = “Z:”
Const TRY_LIMIT = 30

Dim objWMIService
Set objWMIService = GetObject(“winmgmts:\\.\root\cimv2”)

Dim strQuery
strQuery = “Select * From Win32_PingStatus Where Address=’” & COMPUTER & “’”

Dim i
Dim colItems
Dim objItem
i = 0
Do While i < TRY_LIMIT WScript.Sleep(1000) Set colItems = objWMIService.ExecQuery(strQuery) For Each objItem in colItems If objItem.StatusCode = 0 Then With CreateObject(“WScript.Network”) .MapNetworkDrive DRIVE, “\\” & COMPUTER & FOLDER End With Exit Do End If Next i = i + 1
Loop

pingコマンドではなくWMIを使っているので、DOS窓が出ない!
スタートアップで実行するようにしたら、少しだけシアワセな気分になれた。

コメント

タイトルとURLをコピーしました