teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

質問修正への対応

2018/04/26 13:05

投稿

otn
otn

スコア86349

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
+ ```