Следующие команды DOS создают соединение (называемое Source
), указывающее на папку (называемую Destination
), которая больше не существует:
mkdir Destination
mklink /J Source Destination
rd Destination
В настоящее время я использую следующий VBScript для проверкичто пункт назначения точки соединения существует:
' FileSystemObject is used for multiple things, so defined globally
Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")
Function Valid_Junction(folderName)
Valid_Junction = True
On Error Resume Next
Dim count : count = fso.GetFolder(folderName).Files.Count
' An error will be thrown if the destination doesn't exist
If Err.Number <> 0 Then Valid_Junction = False
On Error Goto 0
End Function
В приведенном выше примере вызов Valid_Junction("Source")
правильно возвращает False
, поскольку Destination
больше не существует.
Есть ли проще, чище или более эффективный способ сделать это?