回答編集履歴
1
質問修正への対応
answer
CHANGED
@@ -1,1 +1,27 @@
|
|
1
|
-
その前の行で`RemoveNetworkDrive`しているので、ifの時点ではつながっていないのでは?
|
1
|
+
その前の行で`RemoveNetworkDrive`しているので、ifの時点ではつながっていないのでは?
|
2
|
+
|
3
|
+
#質問修正への対応
|
4
|
+
`RemoveNetworkDrive`するのに事前に調べる必要はありません。
|
5
|
+
```VBScript
|
6
|
+
Option Explicit
|
7
|
+
|
8
|
+
Dim objWshNetwork ' WshNetwork オブジェクト
|
9
|
+
Dim strDrive ' ドライブ名
|
10
|
+
|
11
|
+
Set objWshNetwork = WScript.CreateObject("WScript.Network")
|
12
|
+
strDrive = "Z:"
|
13
|
+
|
14
|
+
On Error Resume Next
|
15
|
+
objWshNetwork.RemoveNetworkDrive strDrive, True, True
|
16
|
+
On Error Goto 0
|
17
|
+
If Err.Number = 0 Then
|
18
|
+
WScript.Echo strDrive & " ドライブを切断しました。"
|
19
|
+
ElseIf Err.Number = -2147022646 Then
|
20
|
+
'WScript.Echo strDrive & " ドライブは接続されていませんでした"
|
21
|
+
Else
|
22
|
+
'その他のエラー(ネットワークのエラーなど)
|
23
|
+
Err.raise Err.Number
|
24
|
+
End If
|
25
|
+
|
26
|
+
Set objWshNetwork = Nothing
|
27
|
+
```
|