2

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

但是,我需要保留映射驱动器的快捷方式。如果您查看“属性”的“快捷方式”选项卡,您可以看到这种类型的快捷方式具有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
4

1 回答 1

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
于 2013-09-13T11:42:30.437 回答