感謝您的關注。內存不足從SQL Server中下載(小)圖像
我正在測試我的一個小程序,專門用於從SQL Server上載和檢索圖像。
當我運行下面的代碼時,我得到一個'Out of Memory'錯誤 - 儘管我的電腦有8GB內存,而且程序實際上只是一種形式。
Dim cmd As New SqlCommand("SELECT DP FROM PersonsA WHERE Members_ID = 1", con)
cmd.CommandType = CommandType.Text
Dim ImgStream As New IO.MemoryStream(CType(cmd.ExecuteScalar, Byte()))
PictureBox2.BackgroundImage = Image.FromStream(ImgStream)
ImgStream.Dispose()
con.Close()
類型 '的System.OutOfMemoryException' 的未處理的異常發生在System.Drawing.dll程序
其他信息:內存。
調試是突出BackgroundImage =
線,如果我改變BackgroundImage
只是Image
,程序工作。但我以這種方式犧牲了佈局選項。
爲什麼這個錯誤發生,只有當它是BackgroundImage
?
如果你使用' Image.FromStream(ImgStream,False,True)',你會得到不同的異常嗎?該代碼驗證(第三個參數爲True)圖像數據。 – FrankPl
它可能也取決於如何和保存到數據庫 - 可能是不正確的保存。看看你是否可以從數據庫創建一個圖像並將其保存到磁盤,以便您可以檢查它。 – Plutonix
SQL Server上的數據類型是Image。它以十六進制格式存儲圖像 - 無論如何,從它的外觀來看。 – user3224987