1

インストーラーを作成し、テスト環境にデプロイしましたが、dllが見つからないためにエラーが発生しました(wsxファイルには含まれていませんでした)。不足しているdllを出荷するためのMSPパッチを作成することは可能ですか、それともまったく新しいインストーラーを作成する方が良いですか?

さまざまな例に従ってみましたが、次のエラーが発生し続けます。

デバッグ:エラー2356:ストリーム内のキャビネットが見つかりませんでした:media1.cab。

4

2 に答える 2

3

パッチは、更新された MSI で実行できることは何でも実行できますが、更新をよりコンパクトな方法で配信するパッケージ化および配信メカニズムにすぎません。したがって、この新しい更新をパッチとしてパッケージ化できるようにするには、セットアップの完全な新しいバージョンを実際に作成する必要があります。

重要: 完全なアップグレードが適切に機能する前に、パッチのテストに時間をかけないでください。これは完全に時間の無駄です。これは不可解なエラーのみを作成し、非常に一般的な現実世界の時間の浪費です。

以前のセットアップが本番環境に移行して「一般公開」されていない限り、パッチで時間を無駄にすることはありません。パッチの作成には多くの時間が必要であり、テストにはさらに多くの時間が必要です。リスク複雑さが大幅に増加します。巨大な新しい MSI ファイル。製品が非常に大きく、インストールに時間がかかる場合を除き、UAT または QA テストにパッチを使用することは一般的ではありません。

個人的には、パッチの適用に関しては、MSI は完全に失敗したと感じています。これは使いやすく、付加価値のある機能であるべきですが、それ自体が非常に複雑で問題のある問題になっています。

于 2011-05-23T23:09:33.890 に答える
1

はい、パッチを介して不足しているファイルを追加できます。おそらくこの記事が役立つでしょう:http ://wix.sourceforge.net/manual-wix2/patch_building.htm

パッチを作成するときは、常に既存のインストーラーを変更する必要があります。新しいインストーラーを最初から作成することはありません。また、新しいバージョンからリソースを削除しないでください。パッチの場合は、リソースを変更または追加する必要があります。

エラー2356に関しては、元のインストールが何らかの理由で破損しているようです。パッチを適用する前に、古いバージョンの修復を試すことができます。

于 2011-05-23T17:48:27.527 に答える