19,468
社区成员
发帖
与我相关
我的任务
分享
HBITMAP hBitmap = (HBITMAP) ::LoadImage(NULL, _T("C:\\1.bmp"), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
CBitmap* bitmap = CBitmap::FromHandle(hBitmap);
if(!OpenClipboard())
return;
EmptyClipboard();
SetClipboardData(CF_BITMAP, bitmap->GetSafeHandle());
CloseClipboard();
BOOL CopyBmp2Clipboard(LPCTSTR szFilePath)
{
BOOL bRet = FALSE;
HBITMAP hBitmap = NULL;
BOOL bClipboardOpened = FALSE;
do
{
hBitmap = (HBITMAP)LoadImage(NULL, szFilePath, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
if(hBitmap == NULL)
break;
if(!OpenClipboard(NULL))
break;
bClipboardOpened = TRUE;
EmptyClipboard();
SetClipboardData(CF_BITMAP, hBitmap);
bRet = TRUE;
} while (0);
if(bClipboardOpened)
{
CloseClipboard();
}
if(hBitmap)
{
DeleteObject(hBitmap);
hBitmap = NULL;
}
return bRet;
}