2017-08-23 66 views
2

我開發了一個用於學習的小型數據庫應用程序,我想將其部署到其他機器上運行。C#應用程序 - 無法添加預先請求的文件

我嘗試發佈應用程序並選擇從與我的應用程序相同的位置下載先決條件。它給我一個錯誤,先決條件文件沒有找到,它要求我下載這些文件

現在我已經下載的文件,我不知道在哪裏放置這些文件,並將其搜索到它。

我發現,我需要把這個路徑下添加:

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\Bootstrapper\Packages\DotNetFX45 

現在,我有這樣的路徑下4個不同的目錄:

C:\Program Files (x86)\Microsoft SDKs\Windows 

目錄

v7.0A 
v8.1 
v8.1A 
v10.0A 

順便說一下,Bootstrapper目錄只有av可在v7.0A文件夾中找到。所以,我想補充NDP452-KB2901907-x86-x64-AllOS-ENU.exe此路徑下:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX452 

但它仍然給了我同樣的錯誤。然後我嘗試在其他版本下添加Bootstrapper目錄,但發生同樣的錯誤。

問題:

  1. 什麼是正確的路徑和爲什麼它是無法加載該文件?
  2. 我需要添加其他一些先決條件,以及如何知道他們正確的目錄? (sqlncli.msi,sqllocaldb.msi,sqlcmdlnutils.msi
  3. 它要求x64x86單獨設置文件,所以我該如何處理?

環境說明:

  • 窗口8單一語言
  • 的Visual Studio 2015年(企業)
  • SQL服務器2017年
+0

你使用ClickOnce? – Alex

+0

是的,我正在使用clickonce – Alena

+0

你可以使用nuget包,而不是sql客戶端和本地數據庫,它可以節省很多工作 –

回答

2

而不是複製的下微軟SDK來引導程序您需要將下載的先決條件複製到軟件包文件夾Bootstrapper unde r Microsoft Visual Studio 14.0。例如

32位系統:

C:\Program Files\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages 

64位系統:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages 

檢查您的系統相關的路徑:

更多細節在以下鏈接: https://msdn.microsoft.com/en-us/library/hh873130.aspx

對於所有其他先決條件,請務必將其複製到\ packages \ {prerequisite}文件夾中。而如果單獨詢問x64x86文件,然後創建子目錄,如:

Bootstrapper\Packages\SqlLocalDB2012\x64   (for 64-bit) 
Bootstrapper\Packages\SqlLocalDB2012\x86   (for 32-bit) 
+0

真棒,它的工作原理。如果你分享更多的細節,比如大多數人在'Microsoft SDKs'文件夾下提到的但不起作用的話,我會非常高興。還有一個問題,我怎樣才能讓它像一個安裝文件一樣點擊安裝,它會自動安裝所需的一切。 – Alena

相關問題