在为PE添加外置程序时有时需要为添加的程序写入注册表信息,如何能做到这一点呢?下面就为大家介绍介绍。
使用 Regsnap 等在标准的 Windows 环境下跟踪分析出软件要添加到注册表中的内容,然后将注册表修改条目导出,并改写成批处理文件,保存到软件所在的目录中。
比如对 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 。
也可使用 Set OP=%%~dI,与上面相比,仅仅是将其中的 ~dpI 改成了 ~dI,此时变量将不扩充到当前路径,而只扩充到当前盘符。因此如果这样使用,你必须在变量后加上程序的完整路径。比如:
%OP%\PROGRAMS\TOTALCMD\RUNTC.EXE
w10系统启用远程sql server调用失败怎么回事sqlserver是一款功能比较全面的数据库平台,但在使用过程中也难免会遇到一些问题,比如最近有朋友遇到了sqlserver数据库远程调用失败的故障,W10系统启用远程sqlserver调用...
紫光w10系统总是提示WiFi不可用如何应对?系统盒w10系统WiFi连接不稳定,总是自动断开提示WiFi连接不可用,这可能是无线网络没有设置好。可以用疑难解答来自动修复。下面就来介绍一下解决这个问题的操作步骤。 具体...
提供一键重装win10系统 | win7系统 | win8系统 | XP系统 | 以及重装系统的相关教程
Copyright@2018深度重装系统版权所有. All Rights Reserved.