2011-03-23 168 views
2

我正在做一個編譯一個C#腳本來創建使用Microsoft.CSharp.CSharpCodeProvider的EXE應用程序。在製作EXE的過程中,它以編程方式嵌入文件,EXE在稍後的過程中執行時讀取該資源。當我嘗試添加一個大文件,並進行編譯,編譯器會引發類似「無法添加資源。內存不足」或類似的東西的錯誤。有沒有辦法在c#項目資源中添加大文件?如何將大文件添加到c#項目中的資源?

+1

有多大,我們說話? – 2011-03-23 14:20:16

回答

4

沒有嵌入資源大的可執行文件。它不僅會轟炸編譯器,而且會炸燬你的程序。任何大於〜500兆字節是一個32位操作系統上的麻煩,也不會有在地址空間足夠大,以適應它的孔。您可以通過SysInternals的VMMap實用程序來了解代碼和數據之間的分離方式。

由於您使用的CodeDOM,您可以使用/ linkresource編譯器選項將文件保存與可執行的。運行時可能仍然存在問題,但這是另一個問題。

相關問題