從GetBitmap()
獲得返回碼爲0的可能原因是什麼?CBitmap :: GetBitmap失敗
BITMAP bmInfo;
int rc = bitmap->GetBitmap (&bmInfo);
int ec = GetLastError();
通過GetLastError()
返回的值也爲0。MSDN沒有給予任何幫助和所有有類似的問題已經被問論壇是沉默。
給你一些情況下,我的CBitmap的一個實例,我使用類似於下面的代碼安裝的CBitmap的第二個實例相同的HBITMAP:
CBitmap first;
:
:
CBitmap second;
second.Attach ((HBITMAP)first);
BITMAP bmInfo;
second.GetBitmap (&bmInfo);
到GetBitmap()
呼籲second
失敗而不是first
。
將擁有該對象的句柄附加到另一個對象成爲新所有者是不安全的。最終其中一人將擁有無效的手柄。 – 2012-04-18 10:37:27
@RomanR。,這是一個有效的評論,但上面的代碼是我試圖做的簡化版本。所以,我正在考慮每個對象何時被銷燬。 – Jaywalker 2012-04-18 10:42:24