我寫了一個在WinCE屏幕上顯示圖標的小項目。這些圖標是放置在主資源文件(Resources.resx)中的28x28 16色BMP文件(主窗體的resx具有相同的問題,並且GIF文件也不起作用)。我無法在WinCE上加載位圖
我第一次嘗試從資源中獲取任何位圖時,從Microsoft.AGL.Common.MISC.HandleAr(從System.Drawing.Bitmap調用)引發了類型爲Exception並帶有消息「Exception」的異常。 _InitFromMemoryStream。
我有兩個WinCE設備。這個錯誤只發生在其中的一個上;其他工作正常。除了這個問題之外,該應用程序可以在兩個設備上運行。該應用程序還使用一些涉及DIB的本地代碼,並且工作正常。有任何想法嗎?
更新:如果我嘗試從文件加載位圖,則會發生同樣的錯誤。我也嘗試過1位(黑色&白色),8位和24位位圖無效(WinCE幀緩衝區最常見的是16位,但我沒有圖像編輯器可以產生16位位圖。)
這些是什麼設備?你能發佈鏈接到位圖嗎? – MusiGenesis 2009-10-27 19:39:04
這兩個設備是否運行相同的操作系統版本?或者他們是兩種截然不同的設備? .NET CF依賴於操作系統提供的圖像編解碼器。因此,可能特定的操作系統映像可能不支持文檔中詳述的每種文件格式。 – 2009-10-27 23:38:20
你說你可以創建一個DIB。 DDB怎麼樣?故障設備的顯示驅動程序是否支持16色調色板? – ctacke 2009-10-28 01:16:45