如何在指定的窗口内画线

MirindaLiu 2009-11-17 10:08:23
问题补充:程序是这样的 我写个了个dll文件(自动画线100条) 然后想用钩子 挂到 windows自带 的 画图 程序上,可是我调用 findwindow(null,“画图”)后 程序不仅仅是在画图上画线 而是在任何窗口上都划线, 包括桌面,程序相关代码如下 抢请高手看看。
int count = 0;
srand((unsigned)timeGetTime());
HWND hwnd = FindWindow(NULL,"画图");
HDC hdc = GetDC(hwnd);
while (100 >= count)
{
HPEN hpen = CreatePen(PS_SOLID,1,RGB(rand()%232,rand()%169,rand()%132));
SelectObject(hdc,hpen);
MoveToEx(hdc, rand()%321,rand()%600,NULL);
LineTo(hdc,rand()%216,rand()%506);
count++;
Sleep(500);
}
ReleaseDC(hwnd,hdc);


期待 期待有人帮解答一下

...全文
134 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
MirindaLiu 2009-11-26
  • 打赏
  • 举报
回复
再来几个指点的
JonathanS666 2009-11-17
  • 打赏
  • 举报
回复
你找的窗口不对啊 “画图”


你用spy++ 看看,不仅要找到主窗口,而且要枚举子窗口,在工作区中画才行啊
fishion 2009-11-17
  • 打赏
  • 举报
回复
FindWindow得到的值正确没有,如果FindWindow失败hwnd 就是NULL,当hwnd是NULL,
If this value is NULL, GetDC retrieves the DC for the entire screen

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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