2017-07-23 96 views
0

我正在使用多語言C#窗體窗體應用程序。我正在使用諸如日文,中文,泰文和韓文等語言。 所以我加載資源文件,如Resources.ja-JP.resx,Resources.zn-CH.resx,Resources.th-TH.resx和Resources.ko-KR.resx。帶有大圖像的資源

我們在我們的項目中使用大圖片,並將其加載到相應的資源中。所以資源dll的大小是每個大約400 MB。

我想在x86調試模式下運行應用程序,但在更改語言時出現「內存異常」。我做了很多搜索,但每個人都在說這是因爲非常大的dll。

有沒有人遇到過相同的情況。請告訴我。

+2

不要放位圖,因爲它們非常大。首先縮小它們。創建小圖片並投入資源並展示必要的地方。如果需要顯示大型高清圖像。從磁盤渲染它們。不要把它們放在Dll中,而是把它們的路徑渲染。不要忘記處置。 – Ramankingdom

+0

調用堆棧FTW! –

+0

感謝您的建議。 –

回答

0

你確定你有內存不足的例外,因爲圖像?對於今天的系統來說,400MB聽起來不是很大。 刪除所有圖像,看看問題是否仍然存在。

否則,如@Ramankingdom建議的,將圖像移出資源。只需創建一個名爲具有各個語言子文件夾的圖像的文件夾即可。這樣你就可以用.NET當前的文化取代子文件夾,你應該沒問題。

+0

當處理像素尺寸較大的圖像時,GDI +經常拋出「內存不足」。即使你有足夠的內存。 –

+0

感謝您的建議。 –