在我制作的PE杀毒软件启动时有从U盘(含有定位用文件VirData.bin)加载最新病毒库定位U盘盘符的命令如下:
for %%i in (z,y,x,w,v,u,t,s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c) do if exist %%i:\Virdata\Virdata.bin set usb=%%i
在我原来使用的XPSP2 PE系统使用这些杀毒软件一直很正常,但在无忧最新的PE系统中使用就会出现“找不到软盘”的错误提示(实机测试才有,虚拟机测试不出现)。
经过检查发现与上述FOR命令直接有关,如果不使用此命令,杀毒软件启动就完全正常。
请教无忧的高手们,不知此语句究竟存在什么问题,如何能用更好的方法解决在批处理中定位U盘盘符,得到U盘盘变量%USB%,用于从U盘复制病毒库。
另外PECMD中有否类似FOR的命令可用。%CurDir%(配置文件目录)环境变量能否想办法用于PE启动后运行的批处理文件中,来定位U盘盘符?
[ 本帖最后由 hxj 于 2009-10-14 19:43 编辑 ] |