|
为什么制作自解压包呢?
直接压缩包命令行解压不更好点吗?如果是自制安装程序,还是用专门的安装程序制作软件比较好。
- set tmp0=%ProgramW6432%\7-Zip\7z.exe
- set tmp1=%ProgramFiles(x86)%
- for %%x in ("%tmp0%") do set tmp0=%%~sx
- for %%x in ("%tmp1%") do set tmp1=%%~sx
- %tmp0% x %SystemRoot%\Setup\Scripts\FoxitReader.7z -o%tmp1%
- set tmp1=%tmp1%\FoxitR~1\FoxitR~1.exe
- start /MIN %tmp1%
- choice /t 1 /d y /n >nul
- taskkill /f /im "Foxit Reader.exe"
复制代码
我的SetupComplete.cmd安装Foxit Reader的一段,Foxit Reader是7z压缩包,安装到Program Files (x86)。
因为批处理脚本不支持路径中间带空格,所以只能搞短路径变量。tmp0是7z的主程序,7z是是SetupComplete.cmd前面的命令刚装的。
Foxit Reader打开就关联PDF,所以采用打开再杀掉注册,如果是是注册表或者是各种脚本注册,可以采用类似的方法。
为什么不直接使用OEM文件夹拷贝到指定位置,是因为OEM方式会加只读属性,所以才打包再解压的。 |
|