MSI ファイルをバッチスクリプトでインストールする

MD Aminul Islam 2022年6月21日
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 ビットかを確認しました。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 ファイルを自動的にインストールします。

著者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

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

関連記事 - Batch File