0

我想在我的客戶端安裝我的Windows應用程序。它是一個多用戶應用程序。 10個系統與1個服務器。因此,我在服務器系統上的所有10個系統和服務設置上安裝客戶端安裝程序。如何將我的SQL Server 2008 R2數據庫添加到我的Visual Studio 2010安裝文件?

如何保護我的數據庫中的客戶端服務器?我正在使用VS2010和SQL Server 2008 R2。無需安裝SQL Server Management Studio Express,如何安裝我的數據庫?以及如何添加我的數據庫在服務設置?任何人都可以向我展示這種類型的應用程序的例子嗎?

回答

0

Windows安裝程序沒有任何現成的支持與應用程序一起部署的數據庫,你將不得不編寫自己的組件,它在部署過程中創建數據庫,並與MSI插上。我在我的項目中也做了同樣的事情。按照步驟。

Creating database with Console App

  1. 首先忘記了Windows安裝程序。
  2. 創建控制檯應用程序。它採用兩種SMO(SQL server Management Object)或簡單的SQL命令來執行腳本
  3. Add方法。
  4. 檢查我的答案here能讀.sql文件並執行它的SQL服務器上。
  5. 你需要做的是保存一個.sql腳本文件,它可以在執行時創建數據庫。
  6. 您必須將該文件路徑傳遞給您在控制檯應用程序中使用的方法。

Executing console app during the installation

  1. 現在你有一個控制檯應用程序執行時可能創建一個數據庫,只要正確的憑證文件路徑傳遞給方法。
  2. 將此控制檯exe文件和sql腳本文件添加到您的MSI軟件包中。所以這兩個都將放在應用程序安裝文件夾下。
  3. installer class添加到您的項目中。
  4. 內的安裝方法只需執行控制檯exe文件。

Code

public override void Install(IDictionary stateSaver) 
{ 
    base.Install(stateSaver); 

    Process process = new Process(); 
    ProcessStartInfo info = new ProcessStartInfo(); 
    process.StartInfo = info; 

    info.FileName = Path.Combine(this.Context.Parameters["targetdir"], "ConsoleApp.exe"); 
    info.UseShellExecute = false; 

    process.Start(); 

} 
相關問題