0

我們最近從VS 2008遷移到VS 2013,包括一組安裝項目。其中一個安裝項目是爲了安裝一個Web應用程序。它有一個自定義操作,用於檢查與數據庫的連接。自定義動作的代碼在遷移過程中沒有被觸及,並且.msi在VS 2008中生成時可以很好地工作。當我從VS 2013構建.msi時,它在我們的本地開發服務器上安裝時非常有效,並且拋出一個錯誤並說它在客戶端環境中推出時無法連接到數據庫。VS 2013安裝項目在一臺服務器上工作,不在另一臺服務器上

我真的很感激,如果任何人都可以指向我的搜索方向在這裏。我知道我傳遞了一個正確的連接字符串,並且從VS 2008生成的.msi可以從同一臺服務器連接到該數據庫。

回答

1

爲每個人安裝的Visual Studio自定義操作都將使用本地系統帳戶運行。連接到SQL DB通常會失敗,因爲數據庫不允許系統帳戶連接,或者因爲數據庫在網絡共享上,並且系統帳戶沒有網絡權限。

因此,它可能會因爲數據庫的安全設置或因爲數據庫在網絡上而失敗,並且可能與服務器無關。如果安裝程序與Just me設置一起運行,則它也可能會連接,因爲自定義操作會隨安裝用戶的憑據一起運行。體系結構也可能存在問題,因爲服務器是64位的,而32位子系統是可選的,並且您沒有說您安裝的是x64還是您的自定義操作代碼。

相關問題