3

すでにリリースされているWindowsインストーラベースのセットアップを修正しようとしています。修正は、パッケージのアンインストール時に発生するエラーに対するものです。このために、アンインストールする前に適用される.mst変換ファイルを提供したいと思います。製品のインストール後にトランスフォームを使用することはできますか?または、アンインストールを開始する前に、すでにインストールされている.msiファイルに変換を適用できますか?私が使用したコマンドラインは次のとおりです。

msiexec.exe /x {Product-Code} TRANSFORMS={Path-To}\bugfix.mst
4

3 に答える 3

5

変換は、初回インストール時、またはパッチの一部として内部的にのみ適用されます。このような問題を修正するには、マイナーアップグレードの適用を検討する必要があります(ただし、サイズが大きな懸念事項である場合は、マイナーアップグレードをパッチとしてパッケージ化できるはずです)。新しいパッケージが古いパッケージを置き換えるようにv、必ずプロパティの一部として渡すようにしてください。REINSTALLMODE通常vomus、そのプロパティには適切な値です。

于 2009-09-30T13:46:39.243 に答える
4

アプリのHKEY_CLASSES_ROOT\Installer \ Productsエントリを編集することで、事後に変換を適用できます。

製品を見つけて、TRANSFORMSという値を追加し、それを新しい変換にポイントします。その後、アンインストールが開始されると、その変換が使用されます。

于 2012-01-27T14:40:56.443 に答える
0

わかった。私はこれが古い投稿であることを知っています。しかし、ここに上記に加えて何かがあります。

Vividosは、REINSTALLMODE = VOMUSを使用して、バグ修正をMSIに適用できることを少し幸運に思っていました。ここで、既存のキャッシュMSIは新しいインストーラーで「再キャッシュ」されます。

ただし、MSIのインストール中に適用された変換にバグがある場合、「v」は失敗します。'v'はMSIを再キャッシュしますが、適用された変換は再キャッシュしません。

このような場合、ユーザーは「C:\ windows \ installer [ProductCodeOfTheMsi]」からMSTを手動で再キャッシュする必要があります(VBScriptまたはその他を使用)。ここに古いMSTがあり、BUFIX.MSTは上記の場所にある古いMSTと同じ名前で、置き換えられます。

ブライアンが述べたようにレジストリルートを通過したい場合; MST名をその場所とともに新しいMST名に変更します。

于 2013-05-21T17:36:59.863 に答える