Vbscript 用于批量更改快捷方式目标的脚本?

Vbscript 用于批量更改快捷方式目标的脚本?,vbscript,virus,Vbscript,Virus,我的外置硬盘最近在借给朋友时受到了recycler.exe病毒的影响。病毒只影响外部驱动器。它通过创建的EXE文件将文件夹更改为这些文件夹的快捷方式 我正在搜索将所有快捷方式目标更改为K:\{shortcut name}的脚本。然而,我不懂脚本,在过去的两天里,我试图学习脚本,我不知道我应该使用哪一个。VBScript似乎是最好的选择,但这只是我的看法 问题: 例如,早些时候我有一个名为“Anime”的文件夹。现在,我有一个快捷方式链接到该文件夹,目标如下: %windir%\system32\

我的外置硬盘最近在借给朋友时受到了recycler.exe病毒的影响。病毒只影响外部驱动器。它通过创建的EXE文件将文件夹更改为这些文件夹的快捷方式

我正在搜索将所有快捷方式目标更改为K:\{shortcut name}的脚本。然而,我不懂脚本,在过去的两天里,我试图学习脚本,我不知道我应该使用哪一个。VBScript似乎是最好的选择,但这只是我的看法

问题: 例如,早些时候我有一个名为“Anime”的文件夹。现在,我有一个快捷方式链接到该文件夹,目标如下:

%windir%\system32\cmd.exe/c“开始%cd%RECYCLER\894133bf.exe&&%windir%\explorer.exe%cd%Anime

病毒还会创建一个文件夹(和文件)\RECYCLER\894133bf.exe,快捷方式通过该exe文件链接(见上图)

我想要一个批处理文件将目标路径转换为: K:\动画

通过这种方式,快捷方式可以直接链接到文件。当我取回硬盘驱动器时,病毒和文件夹已被Norton删除。但是,快捷方式仍然存在,除非我更改目标路径,否则无法工作

由于我的硬盘上有37多个文件夹已被转换为快捷方式,我想也许一个脚本将有助于执行以下操作:

  • 从快捷方式中提取文件名
  • 从文件名中删除.lnk
  • 将目标更改为K:\{shortcut name}
  • 转到下一个文件夹并循环直到最后一个文件夹
  • 我在这里遇到了一个提取文件名的脚本:

    但是,我不知道如何将其放入循环中,以便为每个文件夹执行此操作


    任何帮助都将不胜感激。非常感谢。

    For循环中的objFolder.Name是它所遍历的每个文件夹的字符串

        Option Explicit
        Dim strFolderToSearch, objFSO, objRootFolder, objFolder, colSubfolders, strOutput
    
        strFolderToSearch = InputBox("Enter Path:")
    
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objRootFolder = objFSO.GetFolder(strFolderToSearch)
        Set colSubfolders = objRootFolder.SubFolders
    
        For Each objFolder in colSubfolders
             strOutput = strOutput & objFolder.name
             strOutput = strOutput &  vbCrLf
             MsgBox StrOutput
        Next