2013-09-10 171 views
1

我在C#中構建了一個控制檯應用程序,並且希望在遠程機器上執行此應用程序。在遠程機器上執行C#控制檯應用程序

該項目的debug文件夾中包含其他幾個文件除了HelloWorld.exe的

例如

  • HelloWorld.exe.config
  • HelloWorld.pdb
  • HelloWorld.vshost.exe
  • HelloWorld.vshost.exe.config
  • HelloWorld.vshost.exe.manifest

是否需要將所有這些文件複製到遠程機器上的文件夾?我認爲pdb文件是一個可以忽略的調試器文件?這兩個.config文件完全一樣。

回答

7

你列出的文件,你只需要HelloWorld.exe的,也許HelloWorld.exe.config(如果你使用存儲在它的配置)。

  • HelloWorld.exe.config - 您的應用程序的XML配置文件。這個文件可能很重要。通過複製和重命名app.config文件來創建文件以構建目標目錄。

  • HelloWorld.pdb - 調試符號。它們存儲調試應用程序所需的信息,如行號和類似信息。應用程序在沒有它們的情況下將正確運行,但它們在部署時不會有問題。例如,如果您的應用程序拋出異常並崩潰,那麼如果您有調試符號存在,則堆棧跟蹤中的行號將顯示。

  • HelloWorld.vshost.exe - 這是使用Visual Studio的臨時可執行文件,並臨時託管您的應用程序,同時在調試模式

  • HelloWorld.vshost.exe.config - 同第一。配置文件,但對於VS臨時可執行文件

  • HelloWorld.vshost.exe.manifest - "Describes and identifies the shared and private side-by-side assemblies that an application should bind to at run time"。你 也不會需要這個,除非你有依賴程序集 ,其中有許多版本安裝在.NET搜索位置 (應用程序文件夾,GAC等)。大多數情況下,您可能並不是這種情況 。

6

如果它只是一個控制檯應用程序,您所需要的只是可執行文件。但是:

  • 如果您引用未嵌入你需要這些引用的文件

  • 如果你使用的app.config,你還需要在exe.config文件,我會將錢尼古拉和Bar的答案雖然

你是正確的,pdb文件是出於調試目的。

+2

,也許是.exe.config如果你在那裏配置了一些東西 – makim

+0

@sine我想這取決於可執行文件中發生了什麼。我會補充一點 – tnw

3

如果應用程序需要在app.config中一些鐵桿的變量,那麼你需要的可執行exe.config,如果不僅.exe文件

相關問題