抓图与应用进程和服务进程的关系!(基本上很难,高手请进 )

chenqsbeast 2003-08-14 12:30:10
具体描述:
我做了一个抓图程序,是网络版的!其中遇见的问题如下
如果被控制端(也就是要抓的对象)使用应用进程的方式运行,则在被控制端可以生成想要的bmp文件,如果被控制端使用服务进程的方式运行,则在被控制端可以生成的bmp文件始终是黑屏,这是为什么?而且应用进程和服务进程两者的抓图功能的代码完全没有改变,请教高手!
...全文
65 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ypos 2003-08-23
  • 打赏
  • 举报
回复
你看一下SetThreadDesktop之类的函数,再上网去找就可以了
chenqsbeast 2003-08-14
  • 打赏
  • 举报
回复
BOOL CaptureScreen(int sock)
{
HBITMAP mhBitmap;
char cSendData[1024*256];
char cPath[128];
CString StrTemp,StrPath;
int i,ret;
HWND hWnd;
WORD fPrintArea=1;
hWnd=GetDesktopWindow ();
mhBitmap = CopyWindowToBitmap(NULL , hWnd, 1);
HBITMAP hBitmap = NULL;
if (!hWnd)
return NULL;
HPALETTE hPal = NULL;
hPal = GetSystemPalette(NULL);
if(!hPal)
{
return NULL;
}

DWORD dwFlags = NULL;
DWORD dCompression = BI_RLE8; // BI_RLE8 / BI_RLE4 / BI_RGB;


HANDLE hDIB = ChangeBitmapFormat(mhBitmap, //m_pPictureBox->GetBitmap(),
HIWORD(dwFlags),
dCompression,
hPal ,
NULL);
if(hDIB)
{

GetCurrentDirectory(sizeof(cPath),cPath);
StrPath=cPath;
StrPath+="\\";
StrPath+="1.bmp";
SaveDIB(hDIB,StrPath); //dlg.m_ofn.lpstrFile);


}
return true;
}

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧