当社のビジネス要件は、多くのクライアント マシンに Oracle クライアント ソフトウェアをインストールして構成することです。これは、ODBC を使用してネイティブ Oracle ドライバーにアクセスするすべてのカスタム企業 Excel および MS Access ドキュメントの前提条件です。
Visual Studio 2010 で WiX に実行してもらいたいことは次のとおりです。
- ブートストラップを使用して、複数のパッケージを連鎖させます。
- チェーンの最後のパッケージは、ConfigOracleClient.msi と呼ばれるカスタム MSI を実行します。
- ConfigOracleClient.msi は、マシン上の Oracle クライアントを調べるカスタム アクションを実行し、Oracle ホームが配置されているパスを決定します。
- 学習したパスを使用して、適切なドライバーを指すカスタム DSN をインストールします。
- TNSNAMES.ORA という名前のファイルを適切なパスにインストールします。
VS2010 では、ソリューションで 3 つのプロジェクトを作成しました。
- ブートストラップ (InstallPrerequisites.exe)
- OdbcDsns.wxi および TNSNames.ORA テキスト ファイルを含む ConfigOracleClient.msi
- OracleCustomAction.CA.dll
DSN と TNSNames.ORA をインストールするように要求するために、カスタム アクションによって学習されたパスを ConfigOracleClient.msi に戻すアクションは、私には理解できません。