2016-11-12 4 views
0

powershellを使用してmsiインストーラファイルを実行しようとしています。以下は私のパワーのシェルコードは次のとおりです。 -Power Shell MSIを呼び出す

$argumentlist = "/i D:\FolderTest\InstallerTest 1.9.0.39621 Setup.msi /qn /l*v D:\FolderTest\InstallLog.log" 

Start-Process -FilePath "C:\Windows\System32\msiexec.exe" -ArgumentList $argumentlist 

のWindowsインストーラがArgumentListは、変数イマイチが正しく設定されていることを私に言って表示されますけれども、私はこのコードを実行しようとするたびに。誰もこのコードの問題点を教えていただけますか?

答えて

1

msiファイル名のスペースがmsiexecが正しく動作するのを妨げていると思います。次のようなものを試してみてください:
$argumentlist = "/i 'D:\FolderTest\InstallerTest 1.9.0.39621 Setup.msi' /qn /l*v D:\FolderTest\InstallLog.log"

1

PowerShellはシェルです。入力したコマンドを実行するように設計されています。 Start-Processを使用する必要はありません。コマンドを入力してEnterを押してください。

PS C:\> msiexec /i "D:\FolderTest\InstallerTest 1.9.0.39621 Setup.msi" /qn /l*v "D:\FolderTest\InstallLog.log" 

任意のコマンドと同様に、パラメータにスペースが含まれている場合は、引用符で囲みます。

関連する問題