q277230400 发表于 2015-2-10 15:51:24

求助一段AU3代码,获取文件名,并删除指定文件。。。

如题。。。

在系统的启动目录,有一个文件名为abcdef.vbs的文件。
在windows文件夹下面有一个名为abcdef的文件夹,与一个名为abcdef012.exe的执行文件。
在系统注册表run里有一个名为abcdef的键。

我需要把这4个地方全部删掉。。。其中启动目录设置了拒绝访问,需要先解锁,才能够删掉这个VBS文件。

注:abcdef为随机字母,但是名称都是随着VBS文件的名称变化而变化。

例如:启动目录的VBS名称为cdefgh.vbs
那么对应的文件夹名称为cdefgh
对应的执行文件名称为cdefgh012.exe
对应注册表run里面的键即为cdefgh

所以要先获取vbs的文件名,然后才能知道下面3个对应文件夹的文件名。。。
求大神指导。。。

xms77 发表于 2015-2-10 22:01:14

启动目录如何解锁?这个不知道,其他都是容易解决的

xms77 发表于 2015-2-10 22:26:30

本帖最后由 xms77 于 2015-2-10 22:27 编辑

回复 1# q277230400
#include<file.au3>
Local $Name
Local $ArrayFile = _FileListToArray(@StartupDir,"*.vbs")
If @error Then Exit MsgBox(0,0,"没有vbs文件存在")
For $i = 1 To $ArrayFile
        FileDelete(@StartupDir & '\' & $ArrayFile[$i])
        $Name = StringRegExpReplace($ArrayFile[$i],'\.vbs','')       
        DirRemove(@SystemDir & '\' & $Name)
        FileDelete(@SystemDir & '\' & $Name & '012.exe')
        RegDelete("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",$Name)
Next

q277230400 发表于 2015-2-11 03:12:58

本帖最后由 q277230400 于 2015-2-11 03:52 编辑

回复 3# xms77


    感谢楼上的大神,我先试试看。。。启动目录我之前是用的批处理解锁,可能需要用AU3调用。。。就是
Cacls "启动目录" /e /t g everyone:f

然后就是这个VBS文件可能是当前用户,也可能是公共用户。。。

邪恶海盗 发表于 2015-2-15 13:40:40

咋看起来有点像是病毒自我复制自我删除啊...
页: [1]
查看完整版本: 求助一段AU3代码,获取文件名,并删除指定文件。。。