2012-12-21 31 views
4

將.NET源代碼(c#或vb)編譯爲.exe文件時會發生什麼?我想了解這使得一個exe文件過程中會發生,並查看關於逆向工程和解析(例如,How do I decompile a .NET EXE into readable C# source code?What happens when user click .NET assembly (EXE)?)提前當我將源代碼編譯爲.net框架中的exe文件時發生了什麼?

+1

[託管執行流程 - MSDN](http://msdn.microsoft.com/zh-cn/library/k5532s8a.aspx) – Habib

+0

看看[C#編譯如何解決需要頭文件?](http://stackoverflow.com/questions/1917935/how-does-c-sharp-compilation-get-around-needing-header-files/ 1918663#1918663) – adatapost

回答

5

感謝管理執行過程包括以下步驟幾個問題的過程

  1. 選擇一個編譯器

    爲了獲得由第提供的好處e公共語言運行時,必須使用一個或多個目標運行時的語言編譯器。

  2. 編譯代碼以MSIL

    編譯轉換 您的源代碼轉換爲Microsoft中間語言(MSIL)和 產生所需的元數據。

  3. 編譯MSIL到本地代碼

    在執行時,一個剛剛在時間(JIT)編譯器翻譯這些MSIL成 本地代碼。在編譯期間,代碼必須通過驗證 進程,檢查MSIL和元數據以確定 代碼是否可以確定爲類型安全。

  4. 運行代碼

    公共語言運行庫提供,使執行到 發生,並且可以執行期間使用服務的基礎設施。

看看這裏關於詳細信息:http://msdn.microsoft.com/en-us/library/k5532s8a.aspx

+0

感謝您的寶貴意見 – irror

+0

歡迎您 – MUG4N

相關問題