2013-05-13 41 views
2

我希望有控制檯應用程序,類似於網絡部署中部署過程部署控制檯應用程序。我正在尋找一種方法,通過VS部署過程將「發佈」目錄的所有內容複製到網絡共享目錄中。通過僅複製的bin目錄

我知道,這似乎很奇怪,但是,這些應用程序用於批量內部工作。但是,他們必須通過開發過程,開發,生產。由於我們的流程僅僅是複製/粘貼而不是安裝,我僅限於這個過程。從UAT環境複製/粘貼的問題是我們正在獲取UAT服務器設置而不是生產。我試圖儘可能提高效率,而不需要我們的部署團隊做太多的考慮。

所以主要問題:從visual studio部署控制檯應用程序的過程是什麼,其結果本質上是從Release目錄複製/粘貼到遠程服務器上的目標目錄?

+0

這是一個.NET控制檯應用程序或本機(C \ C++)? – Steve 2013-05-13 16:53:32

+0

對不起。爲了澄清,這將是一個.net應用程序。 – FreakinWard 2013-05-13 16:58:15

+0

@IAmCoder我已經部署了許多控制檯應用程序,只需使用'Release'文件夾... – 2013-05-13 17:00:21

回答

2

,我認爲你所要求的東西混合:

  1. 如何將配置文件複製到目標特定的環境
  2. 如何自動複製二進制文件和轉化配置文件

VS發佈按鈕執行兩個操作。

#1,你需要定義一個編譯配置每個目標環境和轉換文件。非網絡應用程序可以使用App.Config Transformation for projects which are not Web Projects in Visual Studio 2010?中描述的加載項。

對於#2有很多解決方案:您可以使您自己的加載項添加一個發佈按鈕,或掛鉤標準構建過程(請參閱https://www.simple-talk.com/dotnet/.net-tools/extending-msbuild/)或簡單地將VS解決方案的構建包裝到腳本中編譯後進行部署。更完整的過程將是實現一個連續的集成服務器,允許在構建和部署過程中創建不同的環境配置。

0

這取決於你的應用是否引用任何外部資源,如文件,註冊表設置,其他應用程序和庫等遠程服務器必須有相同的資源,爲應用程序才能正常工作相同的環境。應用程序本身可以被複制到任意位置。

+0

應用程序確實引用了其他庫等。但是,在構建過程中,應用程序需要運行的所有內容都被複制到Debug/Release目錄。我需要的是從Release目錄複製到任意目錄然後完成的發佈過程。做這個的最好方式是什麼? – FreakinWard 2013-05-13 17:18:42

+0

只需複製發佈目錄的內容即可。您可以在本地嘗試此操作 - 將發佈目錄的內容複製到其他位置並嘗試運行程序。如果它需要的東西確實在Release目錄中,它不會崩潰。但這取決於你的程序的功能。可能有像防火牆規則,machine.config設置等。即使控制檯應用程序有時也需要安裝程序 – OpenMinded 2013-05-13 17:45:21

+0

目前的方法是複製目錄 - 這工作正常。我正在尋找的是一種使用VS Publish功能的方法。我只想點擊發布,並將配置文件夾的內容複製到我們爲項目目錄建立的任何文件夾中。 什麼是這樣做的最佳方法? – FreakinWard 2013-05-13 18:05:54