回答編集履歴

1

質問修正への対応

2018/04/26 13:05

投稿

otn
otn

スコア84499

test CHANGED
@@ -1 +1,53 @@
1
1
  その前の行で`RemoveNetworkDrive`しているので、ifの時点ではつながっていないのでは?
2
+
3
+
4
+
5
+ #質問修正への対応
6
+
7
+ `RemoveNetworkDrive`するのに事前に調べる必要はありません。
8
+
9
+ ```VBScript
10
+
11
+ Option Explicit
12
+
13
+
14
+
15
+ Dim objWshNetwork ' WshNetwork オブジェクト
16
+
17
+ Dim strDrive ' ドライブ名
18
+
19
+
20
+
21
+ Set objWshNetwork = WScript.CreateObject("WScript.Network")
22
+
23
+ strDrive = "Z:"
24
+
25
+
26
+
27
+ On Error Resume Next
28
+
29
+ objWshNetwork.RemoveNetworkDrive strDrive, True, True
30
+
31
+ On Error Goto 0
32
+
33
+ If Err.Number = 0 Then
34
+
35
+ WScript.Echo strDrive & " ドライブを切断しました。"
36
+
37
+ ElseIf Err.Number = -2147022646 Then
38
+
39
+ 'WScript.Echo strDrive & " ドライブは接続されていませんでした"
40
+
41
+ Else
42
+
43
+ 'その他のエラー(ネットワークのエラーなど)
44
+
45
+ Err.raise Err.Number
46
+
47
+ End If
48
+
49
+
50
+
51
+ Set objWshNetwork = Nothing
52
+
53
+ ```