64 ビット Windows では 32 ビット アプリケーションがC:\Program Files (x86)
デフォルトで、64ビット アプリケーションはC:\Program Files
.
しかし、たとえば、1 つのクライアント コンポーネント (32 ビット) と 1 つのサーバー コンポーネント (64 ビット)、および場合によってはいくつかのヘルパー ツール (32 ビット) を含む、より複雑なインストール パッケージがある場合はどうでしょう。この場合、デフォルトのインストール パスは何にする必要がありますか?
いくつかの記事によると、Microsoft と一部のインストール フレームワークでは、ビット数の混在は推奨されていません。
- 正しい 32 ビットまたは 64 ビットの C# アプリケーションをインストールする単一の MSI
- http://jpassing.com/2009/10/09/mixing-32-and-64-bit-components-in-a-single-msi
x64プラットフォームがx86アプリケーションをどれだけうまく実行できるかを考えると、これらを混在させることがそれほど大きな問題である必要がある理由がわかりません。まったく同じバイナリが両方のモードで実行できるマネージドコードではなおさらです。私の場合、付随するライブラリの 75% はクライアントとサーバー間で共有されており、完全に同一であるため、それらを分割する意味はありません。
では、この 32 ビット アプリケーションと 64 ビット アプリケーションの混合に適したインストール場所はどれでしょうか? C:\Program Files (x86)
またはC:\Program Files
?私が見ているように、64ビットの場所が望ましいです。Program Files (x86) ディレクトリは、64 ビット アプリケーション用に設計されていない古いアプリケーション用のレガシー サンドボックスだと思います。ハイブリッド 32/64 ビット アプリケーションの場合、64 ビット認識が存在するため、32 ビット ファイルを 64 ビット ファイルからサンドボックス化する従来の理由はありません。私には、「(x86)」のないパスもより視覚的に魅力的であり、それが最新のアプリケーションであることを示しています-64ビット操作に適合しています(必要な場合)。
同じインストーラー パッケージ内の 1 つのアプリケーションとしてインストールされたときに、実行可能ファイルの 32/64 ビットの混合物を 64 ビット ディレクトリに配置することに対する他の理由を知っている人はいますか?