我写了个小程序,可以记录鼠标点击坐标顺序,再按顺序及时间延时模拟点击记录.
在纯桌面上,可以运行很好.比如先打开我的电脑2秒后再打开回收站之类的.
但为什么点不进其他窗口里面.
在纯桌面上,可以运行很好.比如先打开我的电脑2秒后再打开回收站之类的.
但为什么点不进其他窗口里面.
解决方案 »
- ::sndPlaySound播放wav,中途停止播放的问题。
- 图片重叠问题,怎么样显示在最上层
- 我用sendto和receivefrom是成功了的,但现在问题是当我不sendto也即是不发送什么的时候出现出现耳脉里有杂音直到发送时才停止.这是为什么?
- 在线帮助, 一个函数怎么命名。
- 如何判断汉字输入?
- 我用kodak扫描控件,如何把扫描的图片放入kodak 的图象编辑软件 ,急!!!
- 怎样实现:在CListCtrl中,当鼠标指向某一个Item时,自动会出现提示信息(Tip)?
- 关于即时战斗游戏地图的随机自动生成算法?
- 扩展名为mdf、ldf的文件是什么数据库文件?
- 请问各位,windows矢量字库的文件格式是什么样的呀!!!那里有这方面的资料!!!!!
- 怎么焊接耳麦呀
- MFC,怎么在面板上,选择颜色啊?那个控件在哪呢?
但我觉得设置焦点也没用,因为我hook里把鼠标移动的坐标都显示在程序界面上,但当我鼠标进别窗口时,就无法显示鼠标坐标了。
_declspec(dllexport) LRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
if(wParam==WM_MOUSEMOVE)
{
ff=(LPMOUSEHOOKSTRUCT)lParam;
str.Format(("X=%d Y=%d"),ff->pt.x,ff->pt.y);
::SetWindowText(ss,str);
}
return 1;
}只是非常简单的传递坐标,还需加什么吗?
如果想在其他窗口中捕获鼠标位置,用全局钩子WH_MOUSE_LL、WH_JOURNALRECORD都可以
你的回调函数不要总返回值1,这样的话窗口会不正常。
{
if(wParam==WM_MOUSEMOVE)
{
rr= (LPMSLLHOOKSTRUCT)lParam;
x=rr->pt.x;
y=rr->pt.y; str.Format(("X=%d Y=%d"),x,y);
::SetWindowText(ss,str);
}
return 0;
}
不知你是怎么设置
static LRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
MOUSEHOOKSTRUCT *pmht;
TCHAR szBuf[128];
if ( nCode < 0 )
return CallNextHookEx(g_InstallHook,nCode,wParam,lParam); if( nCode == HC_ACTION && g_MainWnd )
{
pmht = (MOUSEHOOKSTRUCT *)lParam; wsprintf(szBuf,"X=%d Y=%d",pmht->pt.x,pmht->pt.y);
::SetWindowText(g_MainWnd,szBuf);
} return g_InstallHook ? CallNextHookEx(g_InstallHook,nCode,wParam,lParam) :0;
}