2012-02-15 60 views
0

我有一個調試版本的.NET 4.0應用程序,我在這臺機器上安裝了.NET 4.0 Framework,但是,我沒有安裝Microsoft Visual Studio。爲什麼我不能在機器上運行調試版本的.NET程序沒有安裝visual studio

爲什麼我只能運行發佈版本的應用程序,但無法運行應用程序的調試版本?

我猜dll在調試版本的應用程序可能引用一些Visual Studio的DLL?有誰知道到底是爲什麼?

+5

您應該能夠運行以調試模式編譯的程序集。當你試圖運行它時,究竟發生了什麼? – 2012-02-15 04:27:54

+0

@DBM它拋出一個FileNotFoundException.Message,如下所示:未處理的異常:System.IO.FileNotFoundException:無法加載文件或屁股嵌入'xxxx.dll'或其依賴關係之一 。無法找到指定的 d模塊。 – 2power10 2012-02-15 04:30:06

+0

您是否安裝了完整的框架或客戶端配置文件?如果您只安裝客戶端配置文件,請嘗試完整框架。另外,是否在錯誤中引用了您的DLL或框架DLL? – 2012-02-15 04:31:26

回答

0

調試版本專門用於調試您的程序。它包含一些額外的保護和掛鉤,讓您可以逐步測試您的程序。這些需要通常隨Visual Studio提供的特殊調試運行時。

版本構建剝離了所有這些額外的功能,因此您需要運行它的只是.NET框架。

編輯:經過一些更多的研究,它看起來像調試版本應該大致相當於發佈版本。主要區別似乎是調試版本創建了一個帶有調試器的額外查找信息的pdb文件,並且可能會對優化有點不太積極。

+3

對於Win32/C/C++,這可能是真實的,但在.NET上則不然。 – leppie 2012-02-15 04:29:25

+0

條件語句可能會在編譯時被剝離,但是您可以在該框架存在的任何地方運行.NET程序集。 – 2012-02-15 04:30:39

相關問題