急,请教如何把剪贴板中的printscreen中的图片保存成一文件 急,请教如何把剪贴板中的printscreen中的图片保存成一文件vc里的代码该怎么写啊急啊,谢谢各位了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、OpenClipboard2、GetClipboardData3、WriteToBitmapif(OpenClipboard()) { // get bmp info HANDLE hClipData = ::GetClipboardData(CF_DIB); if(hClipData) { UINT nSize = ::GlobalSize(hClipData); UINT nFileSize = nSize+14; BYTE *pBmpBuf = new BYTE[nFileSize]; CopyMemory(pBmpBuf+14,hClipData,nSize); BITMAPFILEHEADER *pBfh = (BITMAPFILEHEADER *)pBmpBuf; pBfh->bfReserved1 = 0; pBfh->bfReserved2 = 0; pBfh->bfSize = nFileSize; BYTE *pTemp = pBmpBuf; *pTemp = 'B'; pTemp++; *pTemp = 'M'; BITMAPINFOHEADER *pBih = (BITMAPINFOHEADER *)(pBfh+1); pBfh->bfOffBits = nFileSize - pBih->biSizeImage; WriteToBMPFile("d:\\movie\\bmp_WithClip.bmp",pBmpBuf, nFileSize); delete []pBmpBuf; } CloseClipboard(); }void CJpeg2BmpDlg::WriteToBMPFile(char *pFileName,BYTE *pBmpBuf, UINT nBmplen){ // open file HANDLE hFile = CreateFile(pFileName,//"d:\\movie\\testJPG_PngLib.bmp", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL); if (hFile == INVALID_HANDLE_VALUE) { AfxMessageBox ("Could not read file"); return; } DWORD dwBytesRead = 0; BOOL bRead = WriteFile(hFile, pBmpBuf, nBmplen, &dwBytesRead, NULL); CloseHandle(hFile); } MFC程序如何在崩溃前调用某些函数 js要传参数给ActiveX,ActiveX方法的参数类型要定为什么? VC DLL的结构体,VB可以调用吗 获取像素点颜色值GetPixel(hdc,x,y)? 如何才能“钩住”所有的文件操作? 请教钩子函数 刚才的问题有点歧意,应该是怎样通过广播地址发数据!! 如何为动态创建的CTreeCtrl控件设置消息处理函数。 关于CButton问题(急!!!) 高手进:在ISAPI中如何得到IIS下某一站点的当前连接用户数?谢谢!! dll 老板要几个监控画面的图做ppt
2、GetClipboardData
3、WriteToBitmapif(OpenClipboard())
{
// get bmp info
HANDLE hClipData = ::GetClipboardData(CF_DIB);
if(hClipData)
{
UINT nSize = ::GlobalSize(hClipData);
UINT nFileSize = nSize+14;
BYTE *pBmpBuf = new BYTE[nFileSize];
CopyMemory(pBmpBuf+14,hClipData,nSize);
BITMAPFILEHEADER *pBfh = (BITMAPFILEHEADER *)pBmpBuf;
pBfh->bfReserved1 = 0;
pBfh->bfReserved2 = 0;
pBfh->bfSize = nFileSize;
BYTE *pTemp = pBmpBuf;
*pTemp = 'B';
pTemp++;
*pTemp = 'M'; BITMAPINFOHEADER *pBih = (BITMAPINFOHEADER *)(pBfh+1);
pBfh->bfOffBits = nFileSize - pBih->biSizeImage; WriteToBMPFile("d:\\movie\\bmp_WithClip.bmp",pBmpBuf, nFileSize);
delete []pBmpBuf; } CloseClipboard();
}void CJpeg2BmpDlg::WriteToBMPFile(char *pFileName,BYTE *pBmpBuf, UINT nBmplen)
{
// open file
HANDLE hFile = CreateFile(pFileName,//"d:\\movie\\testJPG_PngLib.bmp",
GENERIC_WRITE,
0,
NULL,
CREATE_ALWAYS,
0,
NULL); if (hFile == INVALID_HANDLE_VALUE)
{
AfxMessageBox ("Could not read file");
return;
} DWORD dwBytesRead = 0;
BOOL bRead = WriteFile(hFile,
pBmpBuf,
nBmplen,
&dwBytesRead,
NULL);
CloseHandle(hFile);
}