1

WiX 3.7 を使用してインストーラーを作成し、ac# をインストールします。システム サービスは、msiexec -x {product_code} -quiet を使用してソフトウェアの再インストールを試みます。私の OS は Win8 です。まず UI からソフトウェアをインストールします。しばらくすると、サービスが新しいプロセスを作成し、msiexec の呼び出しを開始しますが、失敗しました。これについて私を助けてもらえますか?ずっと悩んでました!どうもありがとう!

次のようなログがあります。

MSI (s) (7C:80) [00:22:01:708]: Warning: The package code in the cached package 'C:\windows\Installer\134f7d5.msi' does not match the registered package code.  Cached       
MSI (s) (7C:80) [00:22:01:724]: SOURCEMGMT: Source is invalid due to client source out of sync (product code is the same).
4

2 に答える 2

1

サービスはどのアカウントで実行されているので、新しいプロセスはどのアカウントで実行されていますか? デフォルトのアカウント (LocalSystem など) には、msi 情報にアクセスする権限がない可能性があります。

于 2013-04-19T18:07:35.233 に答える
0

このメッセージは、パッケージが同じ(属性ProductCodeを介して設定) でインストールされているが、同じパッケージではないことを意味します。Product/@Idこれは通常、パッケージをインストールして再構築し (新しいパッケージが新しい「パッケージ コード」を取得する)、再構築されたパッケージでアンインストールしようとした場合に発生します。また、アンインストール中に何らかの原因でソース解決が発生し、Windows インストーラーが古いパッケージを期待する場所で新しく再構築されたパッケージを見つけた場合にも発生する可能性があります。

スタックを解消するには、新しいパッケージで再キャッシュ/再インストールしてからアンインストールしてみてください。

msiexec /fv path\to\your.msi /l*v install.txt /qb
msiexec /x path\to\your.msi /l*v uninstall.txt /qb

その後、更新の間に MSI を変更せずにシナリオを再度テストします。Windows インストーラーを混乱させ、不満にさせているシステムの変更点をゆっくりと追跡できるようになります。

幸運を!

于 2013-04-19T18:43:44.043 に答える