2017-05-23 2 views
-1

Microsoft.SqlServer.Dacのアセンブリ参照が必要なDACPACを展開するためにDacServices APIを呼び出す。 インストーラを実行するターゲットマシンでSSDT/SQLがDドライブにインストールされているか、SQL Serverの上位バージョンがインストールされている可能性があります。DacServicesを使用して展開するときにターゲットマシン上のSqlServer Dacアセンブリファイルパスを取得する

DacServicesを使用して展開する場合、ターゲットマシン上でMicrosoft.SqlServer.Dacアセンブリファイルパスを動的に取得するにはどうすればよいですか?(動的にSqlPackage.exeを使用する場合は同じ問題があります。 120/DAC/binまたは130/DAC/binフォルダにインストールします)。

誰かが同じエグゼが異なるマシン/環境で動作するようにこの問題の解決方法を提案できれば、それは素晴らしいことです。

答えて

0

最新バージョンのDacFramework.msiは、レジストリのHKLM \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ Data-Tierアプリケーションフレームワーク\ InstallLocationのインストール場所に注意してください。

ただし、インストーラにDacFrameworkアセンブリを含めて、そのコードを呼び出す方がよいでしょう。データ層アプリケーションフレームワークは、Microsoftによって「再頒布可能」コードとしてライセンスされています。

+0

スティーブさんありがとう! HKLM \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ Data-Tierアプリケーションフレームワーク\ InstallLocationを使用して、マシン上の2014年と2016年のインストール先フォルダを取得できませんでした。 Microsoft SQL ServerでDACFrameworkが見つかりましたが、インストール場所がありません –

+0

DacFramework.msiのx86(32ビット)バージョンでは、HKLM \ SOFTWARE \ WOW6432Node \ Microsoft \ Microsoft SQL Server \ Data-Tierアプリケーションを確認できますフレームワーク\ InstallLocation –

関連する問題