2011-02-04 54 views
8

我正在使用VS2008編譯我的C#控制檯應用程序。當我釋放我的應用程序時,我必須刪除很多看起來是多餘文件的東西。例如,防止「superflous」文件被複制到我的發佈目錄中

MyApp.vshost.exe.manifest 
MyApp.vshost.exe.config 
MyApp.vshost.exe 
MyApp.pdb 

如何防止這些文件被複制到我的發佈目錄中?哦,我也使用了Reshaper - 如果這有什麼不同。

回答

15

要刪除PDB文件,只需在項目設置中關閉PDB生成。 (轉到生成選項卡,高級,並將「調試信息」設置爲「無」 - 如果你確實不希望調試信息...)

VSHOST文件允許Visual Studio將可執行文件託管在可重用的進程中 - 基本上,這是在Visual Studio中快速重新啓動應用程序的一種方式。要阻止它們生成,請再次進入項目屬性,這次在「調試」選項卡中,取消選中「啓用Visual Studio託管過程」選項。

+0

謝謝,這很好。 – ac2smith 2011-02-04 14:48:30

+0

謝謝!它真的幫助了我。 – 2011-06-26 12:42:43

0

在您正在構建的項目的屬性中,您可以配置這些東西。選項的確切位置因Visual Studio的版本而異。從「構建」選項卡開始,然後查看「高級」區域。

2

我建議不要從Release目錄中刪除這些文件。相反,請爲您真正想要部署的文件創建一個單獨的文件夾(我們稱其爲Deploy),然後創建一個腳本fillDeploy.bat,該腳本將ReleaseDeploy所需的所有文件完全複製。該腳本可以爲您的部署做一些額外的事情(例如,將文檔文件放在那裏,提供不同的配置文件等)。如果您希望每次製作發佈版本時都調用此腳本,請在您的項目中添加一個postbuild事件,如下所示:

if $(ConfigurationName)==Release call $(ProjectDir)fillDeploy.bat