WinPE系统下修改注册表的方法
WINPE 全称 Windows Preinstall Environment,即“Windows 预安装环境”,是一个微型的windows系统,也是u盘安装windows操作系统必经的一个步骤。在标准的 Windows 环境下运用 Regsnap跟踪分析出软件要添加到注册表中的内容,接着把注册表出至软件的根目录,并改写成批处理文件。
这里以 ACDSEE 这个程序为例,跟踪注册信息后保存在目录:X:\PROGRAMS\图形图像\ACDSEE\ACDSEE.CMD中(其中x表示你要存放的目录),建议把软件存放到\PROGRAMS\图形图像\ACDSEE这个目录中,方便日后维护。并参照其中的 ACDSEE.CMD 这个注册批处理的格式和样式创建你自己应用程序的注册批处理文件。
注意:我们要检测程序所在的实际路径或所在的盘符,因为我们要确保 PE 环境和标准 Windows 环境下调用这些脚本都能够正常运行。
创建批处理时,最两行是用于检测当前目录位置的,要保留并引用其中的变量:
SET Var0=%0
FOR /f "delims=" %%I in ("%Var0%") do Set OP=%%~dpI
而上述两行的作用是用来检测当前批处理所在的路径获得所在分区的盘符,从而在后面的批处理中使用 %OP% 作为外挂程序路径中要使用的所在的分区号。 %OP% 只与所在的盘符相关,与路径无关,因此你的批处理中要在盘符变量 %OP% 后加上详细的路径。比如:
REG ADD HKCR\ACDC_JIF\Shell\ACDSEEen\Command /ve /t REG_SZ /d "\"%OP%ACDSEE.EXE\" /v" /f>NUL
上述命令可在注册表中添加一条注册信息。
注意:检测上述路径命令过程中,Set OP=%%~dpI 时,变量 %OP% 后面不必再添加“\”。如上面的 %OP%ACDSEE.EXE 。
可以使用SetOP=%%~dI,与上面相比,仅仅是将其中的 ~dpI 改成了 ~dI,此时变量将不扩充到当前路径,而只扩充到当前盘符,如果这样使用,须在变量后加上程序的完整路径。比如:
%OP%\PROGRAMS\TOTALCMD\RUNTC.EXE
推荐阅读:winpe蓝屏的三个原因:http://help.zhuangjiba.com/show-21-153-1.html
责任编辑:装机吧小鱼 版权所有,转载请说明出处!
下一篇:制作防止文件被拷贝的u盘