我想用canon sdk(canon_edsdk-2.12)讀取cr2圖像。用edsdk加載cr2時出錯
我似乎正確加載dll,但是當我嘗試獲取實際圖像時,出現錯誤。
我試着運行示例程序,看看它與我的不同,但同樣的事情發生。
試圖尋找在網絡上的問題,我發現樣品的實際源代碼:http://read.pudn.com/downloads107/sourcecode/graph/texture_mapping/440409/RAWDevelop/RAWDevelopDlg.cpp__.htm
我的錯誤,給定的來源,是在void CRAWDevelopDlg::LoadImage()
功能 -
err = EdsGetImage(m_ImageRef , source , kEdsTargetImageType_RGB , rect , size , DstStreamRef);
if(err == EDS_ERR_OK) {...}
else
{
AfxMessageBox("The error occurred with the EdsGetImage function.");
}
上述(在頁面上的481行)是我使用的方法,我得到相同的錯誤 - 與錯誤代碼35(而不是0)。
的錯誤似乎是
#define EDS_ERR_FILE_OPEN_ERROR 0x00000023L
所以......莫不是有毛病的文件?我對不同版本的文件進行了實驗,包括最新的相機......這些文件在Photoshop中打開......並且演示確實顯示標題信息,因爲它提供了錯誤。所以它可以看到一些東西。
我錯過了什麼?
需要的所有DLL使用的是系統路徑...
謝謝。
35十進制是0x23而不是0x21。如果確實是35,你會得到EDS_ERR_FILE_OPEN_ERROR = 0x23L; – user2246051
對......我有多愚蠢。謝謝。我嘗試過的文件應該是有效的文件,但我可以用Photoshop打開它們...我嘗試了用不同相機拍攝的cr2文件。 (將更新帖子) – Thalia