我最近练习练习编写了一个杀U盘病毒的小程序,但是发现有个问题。
具体代码如下
@echo off
cls
cd\
color fc
echo 正在使用本程序,请稍等...
echo 为防止您的移动存储设备再次中招,所以在您的建了几个文件夹,不是病毒,请您放心!
set m=autorun.inf
for /f "skip=1 tokens=1,2* delims==" %%a in (autorun.inf) do (set n=%%b)
for /d %%c in (c d e f h i) do (if exist %%c:\%n% attrib -s -h %%c:\%n% && del /f %%c:\%n%)
for /d %%d in (c d e f h i) do (if exist %%d:\%m% attrib -s -h %%d:\%m% && del /f %%d:\%m%)
for /d %%e in (c d e f h i )do (md %%e:\autorun.inf & attrib +s +h %%e:\autorun.inf)
for /d %%f in (c d e f h i )do (md %%f:\autorun.ini & attrib +s +h %%f:\autorun.ini)
for /d %%g in (c d e f h i )do (md %%g:\autorun.exe & attrib +s +h %%g:\autorun.exe)
pause
当c d e f 等盘中如果没有autorun.inf 或它指定的.exe文件的话,del 就会删除c d e f中的所有文件,连 && 都没用了,请大家帮我修改下,其实我觉得这是个大问题耶!!!
[ Last edited by zqdarkday on 2007-11-14 at 12:22 PM ]
具体代码如下
@echo off
cls
cd\
color fc
echo 正在使用本程序,请稍等...
echo 为防止您的移动存储设备再次中招,所以在您的建了几个文件夹,不是病毒,请您放心!
set m=autorun.inf
for /f "skip=1 tokens=1,2* delims==" %%a in (autorun.inf) do (set n=%%b)
for /d %%c in (c d e f h i) do (if exist %%c:\%n% attrib -s -h %%c:\%n% && del /f %%c:\%n%)
for /d %%d in (c d e f h i) do (if exist %%d:\%m% attrib -s -h %%d:\%m% && del /f %%d:\%m%)
for /d %%e in (c d e f h i )do (md %%e:\autorun.inf & attrib +s +h %%e:\autorun.inf)
for /d %%f in (c d e f h i )do (md %%f:\autorun.ini & attrib +s +h %%f:\autorun.ini)
for /d %%g in (c d e f h i )do (md %%g:\autorun.exe & attrib +s +h %%g:\autorun.exe)
pause
当c d e f 等盘中如果没有autorun.inf 或它指定的.exe文件的话,del 就会删除c d e f中的所有文件,连 && 都没用了,请大家帮我修改下,其实我觉得这是个大问题耶!!!
[ Last edited by zqdarkday on 2007-11-14 at 12:22 PM ]
