1

事前インストーラーを使用してインストーラーを作成しています。私はそれに関して問題があります。

前提条件のインストール条件にはいくつかのオプションがありますが、以下の場合は別の条件が必要です。

前提条件として 2010 Microsoft Office プライマリ相互運用機能アセンブリを入れたいとしましょう。そのためのインストール条件が 2 つあります。

  1. 相互運用アセンブリがインストールされているかどうかを確認するための製品バージョン チェック。
  2. Excel 2010 がインストールされているかどうかを確認するためのレジストリ チェック。

これで、最初の条件が false で 2 番目の条件が true の場合にのみ、前提条件がインストールされます。

高度なインストーラーを使用してこれを達成するにはどうすればよいですか。

ここに画像の説明を入力

そのようなオプションを見つけることができません。私が見つけたのは

  1. 少なくとも 1 つの条件が false の場合にのみインストールします。
  2. すべての条件が false の場合にのみインストールします。

最初の条件も2番目の条件も私の要件を満たしていません。

私を助けてください。

4

2 に答える 2

1

上記で説明した定義済みの方法は使用できません。新しい検索を定義し、上記の 2 つを削除する必要があります。新しい検索では、ビルドする必要があるカスタム実行可能ファイルを基準として使用し、必要な検証を実行します。

実行可能ファイルを使用する新しい検索を定義するオプションは、Advanced Installer に表示されるコンボ リストの最後のオプションです。F1 を押して、必要な実行可能ファイルとそれをプロジェクトに含める方法の詳細を取得します。

C# の代わりに C++ を使用して実行可能ファイルをビルドすることをお勧めします。そうしないと、前提条件として .Net Framework も必要になります。

于 2013-07-16T16:50:40.803 に答える
0

ソリューションは、単純な論理理論に基づいています。

NOT NOT prop == prop

あなたの場合、これをTRUEにしたい:「Excel 2010がインストールされています」

.. または、これは FALSE です: 「Excel 2010 がインストールされていません」!

したがって、基準は次のとおりです。レジストリ値が存在しません

乾杯

于 2013-10-11T15:33:01.697 に答える