2

クライアント マシンに展開する必要がある ActiveX コントロールがあり、インストーラーをクライアントに提供することでこれを行う予定です。

64 ビット オペレーティング システムと 32 ビット オペレーティング システム用に別々の msi パッケージを作成しましたが、正しく動作します。

ただし、次の要件があるため、64ビットマシンに関しては問題に直面します。

32 ビット マシンの場合は、32 ビット ActiveX コントロールをインストールします。

64 ビット マシンの場合、32 ビットと 64 ビットの両方の ActiveX コントロールをインストールします。

基本的な msi インストーラーを使用してハイブリッド インストールを実行できないという記事をたくさん読みました。

これは、単一の setup.exe ファイルを使用して実行できますか?

4

2 に答える 2

1

以下のように、1 つのインストーラー内に32 ビットと 64 ビットの両方のコンポーネントを含めることができ、ターゲット プラットフォームに応じて何をインストールするかを決定できます。

1) 2 つの新しいフィーチャ (32 用と 64 用) を作成し、両方に条件を追加します。

for 32 bit -> Not VersionNT64
for 64 bit -> VersionNT64

2) 両方の前提条件を追加し、それぞれに適切な (親) 機能を選択します

于 2016-08-30T21:04:00.100 に答える
1

1 つの MSI で、ファイルまたはレジストリを 64 ビット システムの 64 ビットの場所にインストールし、32 ビット システムで実行することはできません。したがって、64 ビットの ActiveX コントロールを 64 ビットの場所にインストールまたは登録する必要があると仮定すると、単一の MSI でこれを行うことはできません。

InstallShield 2012 のプレミア エディションをお持ちの場合、これはスイート (またはスイート/アドバンスト UI) プロジェクト タイプのユース ケースの 1 つです。2 つの MSI ファイルを作成し、関連する適格条件とともにスイートに両方を含める必要があります。(正確な条件は、MSI をスタンドアロンにするか累積にするかによって異なりますが、64 ビット MSI は、プラットフォームに x64 のアーキテクチャがある場合にのみ適格です。)

于 2013-05-08T12:16:03.733 に答える