2
使用Gdiplus::Image::FromFile()
時,你是如何處理錯誤?我故意讓它嘗試讀取一個不存在的文件。
它沒有拋出任何異常,或返回NULL。處理錯誤與Gdiplus ::圖片
我可以檢查文件是否事先存在,但如果該文件是不是有效的圖像文件,或遇到其他問題。
使用Gdiplus::Image::FromFile()
時,你是如何處理錯誤?我故意讓它嘗試讀取一個不存在的文件。
它沒有拋出任何異常,或返回NULL。處理錯誤與Gdiplus ::圖片
我可以檢查文件是否事先存在,但如果該文件是不是有效的圖像文件,或遇到其他問題。
在實例GDI +:http://msdn.microsoft.com/en-us/library/windows/desktop/ms535371%28v=vs.85%29.aspx所以,你應該確認圖像:: GetLastStatus()== OK http://msdn.microsoft.com/en-us/library/windows/desktop/ms535383%28v=vs.85%29.aspx
謝謝。他們應該在Image :: FromFile()中真正記錄它。 – Josh 2012-07-18 15:31:49
截至2017年,這個答案不再是有用的:GetLastStatus()方法不再是靜態的,所以在NULL指針上調用它會生成訪問衝突... – AntonK 2017-08-09 19:03:19
GetLastStatus()不是靜態的,所以如果if從FromFile()/ FromStream()返回一個NULL指針,沒有辦法檢查可能出錯的情況......儘管在大多數情況下返回NULL意味着GdiplusStartup()尚未被調用。 – AntonK 2017-08-09 19:12:07