これは純粋に展開の問題であり、異なるプロジェクトを維持する必要はありません。しかし、それは厄介なものであり、これを自分たちで処理しなかったためにOracleにブーイングします。もう1つの考慮事項は、このアセンブリは実際にはターゲットマシンで生成する必要があるということです。いくつかのオプション
- 2つのインストーラーを作成します。1つはx64用、もう1つはx86用です。お客様は、使用しているオペレーティングシステムに基づいて、適切なものを選択します。簡単なことですが、適切なファイルをコピーするだけです。
- 両方のアセンブリをGACにデプロイします。現在は自動化されており、.NETはどちらのタイプのマシンでも適切なものを選択します。大企業はほとんどの場合、セキュリティ更新プログラムを展開できるようにGACを使用する必要がありますが、Oracleがこれを行わない理由はわかりません。
- インストールディレクトリのx86およびx64サブディレクトリにアセンブリを展開します。 IntPtr.Sizeの値に基づいて、適切なディレクトリを選択するAppDomain.AssemblyResolveイベントハンドラーを作成する必要があります。
- EXEプロジェクトのターゲットプラットフォームをx86に変更します。コードが64ビットマシンだけでなく32ビットマシンでも機能する必要があることを考えると、AnyCPU用にビルドする理由はありません/すべきではありません。