0
我的VBScript中有一個要求,用於確保驅動器映射和可聯繫。檢查驅動器是否映射並激活
起初,我只用了FileSystemObject
的DriveExists()
方法,但這種下跌短,在某些情況下用戶開始新的一天在辦公室,但隨後把他們的巡演的筆記本電腦,而無需關閉;因此所討論的驅動器仍被列爲映射,但不可聯繫。
爲了解決這個問題,我創建了下面的函數,但由於使用了On Error Resume Next
,所以看起來有點髒。
所以我的問題是這樣的;有沒有一種方法可以實現我的VBS目標,或者我的方法(或類似方法)是唯一可行的方法?
Function CheckDriveExists(drive)
CheckDriveExists = false
If FSO.DriveExists(drive) Then ' A drive is mapped for the required 'drive'
'** Create a file name for the test file *'
Dim tfDate, tfName
tfDate = Year(Now) & Month(Now) & Day(Now) & Hour(Now) & Minute(Now) & Second(Now)
tfName = "tstfile-" & tfDate & ".bucf"
'** Try to create and then delete a file on the usrs backup drive *'
On Error Resume Next
FSO.CreateTextFile(drive & ":\" & tfName)
FSO.DeleteFile(drive & ":\" & tfName)
CheckDriveExists = (Err.Number = 0) ' Check to see if the file was created and deleted successfully
Err.Clear ' Clear any possible error
On Error GoTo 0 ' Reset error handling
End If
End Function
創建文本文件,恕我直言,不是好辦法。也許你沒有足夠的權限來寫入,特別是根文件夾。抱歉,我沒有其他建議。關於錯誤結果下一步是一個很好的實踐。 – Zam
關於沒有許可的好處。在這種情況下,它不應該是一個問題,但值得注意的是未來。 –