如何通过批处理启动 .wzmul 文件
How to launch a .wzmul file through batch
我有一个在用户计算机上安装 WinZip 的脚本,但是,我需要将 .wzmul
文件移动到正确的位置,我已经成功完成了所有这些操作,但是当我尝试启动该文件时使用 start
命令,它将启动另一个命令。
@echo off
set winzip_path=\mgtutils01\windows7apps\WinZip\WinZip15
set exec_name=winzip150.msi
set reg_name=WinZip.wzmul
set reg_path="C:\Program Files (x86)\WinZip"
pushd %winzip_path%
xcopy "%winzip_path%\%exec_name%" "%USERPROFILE%\Desktop"
msiexec /i "%USERPROFILE%\Desktop\%exec_name%" /QN /L*V "%USERPROFILE%\AppData\Local\winzip_log.txt"
@echo "DONE!!"
xcopy "%winzip_path%\%reg_name%" %reg_path%
start /wait %reg_path%\%reg_name%
如何正确打开这种文件?
根据我的经验,您第一次启动 Winzip 时,如果程序目录中存在多许可证,程序将进行注册。但本质上,由于引用路径的方式,批处理文件存在一些问题。最佳做法是不要在变量中分配引号,而是使用引号来保护变量中的空格和特殊字符。基本上,START 命令将引号视为 Window TITLE。所以对批处理文件的这些更改应该有效。您还对 Winzip 路径使用 PUSHD,因此您无需在代码中指定 Winzip 路径。它已经是工作目录了。
@echo off
set "winzip_path=\mgtutils01\windows7apps\WinZip\WinZip15"
set "exec_name=winzip150.msi"
set "reg_name=WinZip.wzmul"
set "reg_path=C:\Program Files (x86)\WinZip"
pushd "%winzip_path%"
xcopy "%exec_name%" "%USERPROFILE%\Desktop\"
msiexec /i "%USERPROFILE%\Desktop\%exec_name%" /QN /L*V "%USERPROFILE%\AppData\Local\winzip_log.txt"
@echo "DONE!!"
xcopy "%reg_name%" "%reg_path%\"
start "" /wait "%reg_path%\%reg_name%"
POPD
我有一个在用户计算机上安装 WinZip 的脚本,但是,我需要将 .wzmul
文件移动到正确的位置,我已经成功完成了所有这些操作,但是当我尝试启动该文件时使用 start
命令,它将启动另一个命令。
@echo off
set winzip_path=\mgtutils01\windows7apps\WinZip\WinZip15
set exec_name=winzip150.msi
set reg_name=WinZip.wzmul
set reg_path="C:\Program Files (x86)\WinZip"
pushd %winzip_path%
xcopy "%winzip_path%\%exec_name%" "%USERPROFILE%\Desktop"
msiexec /i "%USERPROFILE%\Desktop\%exec_name%" /QN /L*V "%USERPROFILE%\AppData\Local\winzip_log.txt"
@echo "DONE!!"
xcopy "%winzip_path%\%reg_name%" %reg_path%
start /wait %reg_path%\%reg_name%
如何正确打开这种文件?
根据我的经验,您第一次启动 Winzip 时,如果程序目录中存在多许可证,程序将进行注册。但本质上,由于引用路径的方式,批处理文件存在一些问题。最佳做法是不要在变量中分配引号,而是使用引号来保护变量中的空格和特殊字符。基本上,START 命令将引号视为 Window TITLE。所以对批处理文件的这些更改应该有效。您还对 Winzip 路径使用 PUSHD,因此您无需在代码中指定 Winzip 路径。它已经是工作目录了。
@echo off
set "winzip_path=\mgtutils01\windows7apps\WinZip\WinZip15"
set "exec_name=winzip150.msi"
set "reg_name=WinZip.wzmul"
set "reg_path=C:\Program Files (x86)\WinZip"
pushd "%winzip_path%"
xcopy "%exec_name%" "%USERPROFILE%\Desktop\"
msiexec /i "%USERPROFILE%\Desktop\%exec_name%" /QN /L*V "%USERPROFILE%\AppData\Local\winzip_log.txt"
@echo "DONE!!"
xcopy "%reg_name%" "%reg_path%\"
start "" /wait "%reg_path%\%reg_name%"
POPD