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
关于没有许可的好处。在这种情况下,它不应该是一个问题,但值得注意的是未来。 –