在批处理脚本中安装 MSI 文件
在 Windows 中,只需双击或在必要时以管理员身份运行文件即可在系统中轻松安装 .msi
文件。我们还可以使用批处理脚本安装 .msi
。
本文将展示我们如何使用批处理脚本安装 .msi
文件。我们还看到了一个带有适当解释的示例,以使该主题更易于理解。
在批处理脚本中安装 MSI 文件
在下面的示例中,我们将安装一个 .msi
文件。此外,我们将检查系统是 32 位还是 64 位。
我们示例的代码如下所示。
@ECHO off
ECHO Checking Windows OS architecture...
ECHO %PROCESSOR_ARCHITECTURE% | findstr /i ".64." > nul
IF %ERRORLEVEL% EQU 0 GOTO ver_64
GOTO ver_32
:ver_32
ECHO 32 bit detected
ECHO Installing application...
if EXIST "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt" GOTO :end
NET USE u: "\\SMP-W2K8-01.EPM.LOCAL\NSCap\Bin\Win32\X86\Software Management\Plugin"
msiexec.exe /q /i "u:\SoftwareManagementSolution_Plugin_x86.msi"
TIMEOUT 30
TIME /T > "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt"
NET USE u: /DELETE
:end
pause
exit
:ver_64
ECHO 64 bit detected
ECHO Installing application...
if EXIST "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt" GOTO :end
NET USE u: "\\SMP-W2K8-01.EPM.LOCAL\NSCap\Bin\Win64\X64\Software Management\Plugin"
msiexec.exe /q /i "u:\SoftwareManagementSolution_Plugin_x64.msi"
TIMEOUT 30
TIME /T > "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt"
NET USE u: /DELETE
:end
pause
exit
在我们的示例中,我们首先检查系统是 32 位还是 64 位。Batch 中名为 PROCESSOR_ARCHITECTURE
的内置变量包含 .86
或 .64
符号。
通过这个,我们可以得到处理器的架构。为此,我们使用了以下代码行。
@ECHO off
ECHO Checking Windows OS architecture...
ECHO %PROCESSOR_ARCHITECTURE% | findstr /i ".64." > nul
IF %ERRORLEVEL% EQU 0 GOTO ver_64
GOTO ver_32
在 msiexec.exe /q /i
行中,/q
表示安静
,/i
表示安装
。"C:\Program Files\SMP\SMP Agent\installSMPlugin.txt"
是你的 SMP 插件的位置。
你可以根据你的系统进行修改。 \\SMP-W2K8-01.EPM.LOCAL\NSCap\Bin\Win32\X86\Software Management\Plugin
是你的 SMP 服务器的位置。
最后,u:\SoftwareManagementSolution_Plugin_x86.msi
是你的 .msi
文件的位置。
对于 32 位安装,我们使用以下代码行。
:ver_32
ECHO 32 bit detected
ECHO Installing application...
if EXIST "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt" GOTO :end
NET USE u: "\\SMP-W2K8-01.EPM.LOCAL\NSCap\Bin\Win32\X86\Software Management\Plugin"
msiexec.exe /q /i "u:\SoftwareManagementSolution_Plugin_x86.msi"
TIMEOUT 30
TIME /T > "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt"
NET USE u: /DELETE
:end
pause
exit
对于 64 位安装,我们使用了以下代码行。
:ver_64
ECHO 64 bit detected
ECHO Installing application...
if EXIST "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt" GOTO :end
NET USE u: "\\SMP-W2K8-01.EPM.LOCAL\NSCap\Bin\Win64\X64\Software Management\Plugin"
msiexec.exe /q /i "u:\SoftwareManagementSolution_Plugin_x64.msi"
TIMEOUT 30
TIME /T > "C:\Program Files\SMP\SMP Agent\installSMPlugin.txt"
NET USE u: /DELETE
:end
pause
exit
如果每个文件位置和目录都正常,该脚本会自动安装你的 .msi
文件。
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn