如何获得快捷方式的“目标类型”

时间:2013-09-13 11:05:01

标签: vbscript

我想删除桌面文件夹中的所有快捷方式,并确保添加了一组干净的快捷方式。

但是,我需要保留shorcuts到映射的驱动器。如果您查看“属性”的“快捷方式”标签,可以看到此类型的快捷方式包含Target type“文件夹”。

问题是,我找不到通过VBS访问目标类型的任何方法。我可以获得类型(objFile.Type),但这会在“常规”标签上显示Type of file(在本例中为“快捷方式”)。

有人知道访问Target type的方法吗?感谢。

For Each objFile in objFolder.Files

    ' Check that the file 'Target type' is not 'File Folder'
    If Not objFile.Type = "File Folder" Then
        objFSO.DeleteFile(desktop_locations(i) & objFile.Name)
    End If

Next

1 个答案:

答案 0 :(得分:7)

您需要检查快捷方式的目标:

Set fso = CreateObject("Scripting.FileSystemObject")
Set sh  = CreateObject("WScript.Shell")

shortcut = "C:\path\to\some.lnk"

Set lnk = sh.CreateShortcut(shortcut)
If Not fso.FolderExists(lnk.TargetPath) Then
  'target doesn't exist or is not a folder
  fso.DeleteFile shortcut
End If