msiexecを使ってMSIのローカルコピーをインストールすることはできませんが、psexecを使ってネットワーク経由でインストールすることはできます


1

なぜそうなるのかよくわかりませんが、PowerShellでmsiexecを使用してコンピュータにリモートアクセスすると、MSIのローカルコピーをインストールできません。私はこのエラーが出ます:

[computername]: PS C:\temp> msiexec -q -i installer.msi
T h i s   i n s t a l l a t i o n   p a c k a g e   c o u l d   n o t   b e   o p e n e d .     V e r i f y   t h a t   t h e   p a c k a g e   e x i s t s   a n d   t h a t   y o u   c a n  
 a c c e s s   i t ,   o r   c o n t a c t   t h e   a p p l i c a t i o n   v e n d o r   t o   v e r i f y   t h a t   t h i s   i s   a   v a l i d   W i n d o w s   I n s t a l l e r   p 
a c k a g e .

(なぜそこに余分な間隔があるのか​​もわかりません。)

しかし、私はこのようにpsexecを使用してネットワークからそれをインストールする問題はありません:

psexec -s \\computername msiexec -i -q \\networkpath\to\installer.msi

ローカルコピーがブロックされていないことを確認したので、これが何を引き起こしているのかわかりません。

MSIをコンピュータにコピーして、リモートセッション内からインストールする方法を教えてください。それともpsexecがこれを実行するための最良の方法ですか?

回答:


1

これは私にとって問題を解決した答えです:

msiファイルを含むフォルダ内から次のコマンドを実行しようとした場合

msiexec / i。\ package-to-install.msi / qn

タブ補完を使用した場合は、( 私のLinuxマシンに波がシスタ! )Powershellは無害に見えるファイル名を含みます 。\ これにより、奇数スペースのエラーメッセージが表示されます。

.msiファイル名の前にある。\を削除します。

コマンドは次のようになります。

msiexec / i package-to-install.msi / qn

参考として、この情報は見つかりました ここに


スーパーユーザーコミュニティへようこそ。あなたが提供したリンクから追加情報を追加しました。これは将来、人々がリンク切れをクリックしないようにするためです。 (リンク腐敗)
Tim_Stewart

0

万が一64ビットマシンを実行していますか?この問題は、32ビットのローカルデスクトップでPowerShellを実行し、ネットワーク経由で64ビットのMSIインストーラを実行する前に発生していました。

これをスクリプトの一番上に貼り付けて、何が起こるのかを確認してください。

    if ($pshome -like "*syswow64*") {
    & (join-path ($pshome -replace "syswow64", "sysnative") powershell.exe) -file (join-path $psscriptroot $myinvocation.mycommand) @args
    exit
}

0

私はこれをずっと早く投稿すべきでしたが、PowerShellではパッケージへのフルパスを渡すことが最善であることがわかりました(もちろん、スペースがあれば引用符で):

[computername]: PS C:\cwd doesn't matter> msiexec -q -i "c:\path to\the package\Software Name.msi"

私はそれを推測しています msiexec PSから現在のディレクトリを読み取ることができません。


-1

修正バージョン

psexec -s \\computername msiexec /i /q \\networkpath\to\installer.msi

注意 /i そして /q 代わりに -i そして -q

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.