Windows – Windows10アップデート後などにネットワークドライブが切断されてしまう場合にはVBScript

この記事は約3分で読めます。
スポンサーリンク

Windows10のアップデート後などに、それまでログオン時に接続されていたネットワークドライブが切断されたままになってしまった場合の備忘録。
ドライブのアイコンに×印が付くだけなら一度開くと接続されて×印が消えますが、アイコン自体が消えてしまうと、そのたびにネットワークドライブの割り当てを行わないといけなくなります。私の場合は、自宅PCは同一ネットワークセグメント上にNASがあり×印パターン、会社PCはセグメントの違う場所にNASがありアイコン自体消えるパターンとなりました。
これを回避するために、WSH(Windows Script Host)のVBScriptを利用します。スクリプトファイル(.vbs)を作り、タスクスケジューラでログオン時に実行させて任意のネットワークドライブに接続させます。

スポンサーリンク

VBScriptのスクリプトファイルを作る

メモ帳などに以下の要領で記述し、拡張子.vbsとして任意の場所に保存します(例えば nw_access.vbs としてドキュメントに保存など)。

WScript.sleep 3000
Set objNetwork = CreateObject("WScript.Network")
objNetWork.MapNetworkDrive "X:","\\NAS-NAME\share"
objNetWork.MapNetworkDrive "Y:","\\192.168.0.100\share"
objNetWork.MapNetworkDrive "Z:","\\NAS-NAME\share\admin",False,"admin-user","password"
WScript.sleep 3000
次の処理までの遅延時間(ms)
ログオン後、3秒程度を設定
Set objNetwork = CreateObject(“WScript.Network”)
ネットワークオブジェクトの作成
objNetWork.MapNetworkDrive “X:”,”\\NAS-NAME\share”
ネットワークドライブを割り当てて接続
objNetWork.MapNetworkDrive “[ドライブ名]:”,”[共有フォルダのパス]”
複数割り当てる場合は改行して記入
ドライブ名はコロンが必要。
NASやストレージサーバなどのホスト名を仮にNAS-NAMEとすると、その中のshareフォルダをXドライブに割り当てる場合の例
objNetWork.MapNetworkDrive “Y:”,”\\192.168.0.100\share”
フォルダのパス指定は、ホスト名の代わりにIPアドレスでも可能
objNetWork.MapNetworkDrive “Z:”,”\\NAS-NAME\share\admin”,False,”admin-user”,”password”
現在のログオンユーザーとは違うアクセス権が必要なフォルダへのアクセスには第4第5パラメータにユーザー名とパスワードを追記。第3パラメータはデフォルトのFalse
\\NAS-NAME\share のadminフォルダへのアクセスが、ユーザー:admin-userでないと出来ない場合

作成したスクリプトファイルを実行するとネットワークドライブが接続されます。
これをタスクスケジューラでログオン時に実行させます。

タスクスケジューラについては、こちらの記事の要領ですが、[トリガー]タブの[タスクの開始]を[ログオン時]に設定します。

以上、ご参考になれば幸いです。

コメント

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