C语言找到窗口句柄,然后进行后台鼠标键盘操作

给个例子

相关API

窗口处理函数中加入WM_MOUSEMOVE消息,然后编写鼠标消息处理函数OnMouseMove,当然,鼠标消息不止这一个,具体请查看msdn
键盘:添加WM_KEYDOWN/WM_KEYUP/WM_CHAR消息,这三个消息的具体请查看msdn,然后就可以编写消息消息处理函数了!
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-28
鼠标:窗口处理函数中加入WM_MOUSEMOVE消息,然后编写鼠标消息处理函数OnMouseMove,当然,鼠标消息不止这一个,具体请查看msdn
键盘:添加WM_KEYDOWN/WM_KEYUP/WM_CHAR消息,这三个消息的具体请查看msdn,然后就可以编写消息消息处理函数了!本回答被提问者采纳
第2个回答  2013-07-28
以前试过,直接findwindow找到窗口主句柄,可以借助spy++找到窗口类,然后直接对主句柄SendMessage就行了,具体消息ID可以用spy++找到。
第3个回答  2013-07-28
具体是要解决什么问题?追问

简单点的游戏后台喊话

C# 我知道了一个窗口的句柄,如何后台模拟鼠标在句柄窗口内点击呢!
就我所知,如果真要实现你的那个功能,应该是用vbscript这种东西来做。 如果你的要求不太精确,就直接调用窗口内鼠标要点击的按钮的方法就行了,不需要模拟。 如果要凭空触发点击事件,则需要用到委托。委托就是将方法作为参数传递的机制,不知道委托能不能行,我觉得第二种方法比较靠谱。

...里录制了一个脚本,如何让它在游戏窗口内后台操作?
录制的脚本想要后台操作需要大量工作量。PluginHwnd=Window.GetKeyFocusWnd()首先需要这个语句找到当前游戏窗口句柄 PluginWindow.SendKeyPress(Hwnd,??)然后用这个语句执行后台键盘按键,鼠标左键按键的话是把SendKeyPress(Hwnd,??)改成LeftClick(Hwnd,x,y)键盘按键中的:??代表的意思是→键盘的按键码,...

按键精灵什么实现点指定后台窗口的坐标
先取得客户区句柄,然后把窗口移动到屏幕外,用后台鼠标单击可以实现点击后台窗口的坐标。\/\/得到当前最前面的窗口句柄 Hwnd1 = Plugin.Window.Foreground()\/\/得到鼠标指向的窗口句柄 Hwnd2 = Plugin.Window.MousePoint()\/\/移动窗口到(x1, y1)位置,窗口外某坐标点 Call Plugin.Window.Move(Hwnd1, x1,...

按键精灵给指定窗口,后台鼠标点击
把这个脚本复制成两份,两个脚本需要不同的开始键,先把第一个需要执行的窗口置前,然后开始脚本,之后再把第2个窗口置前,开始另一个脚本。另外,根据你所说的,你提供的坐标很可能是不对的。后台坐标和屏幕坐标是不一样的,你需要先找到这个窗口的起始点坐标,然后再定位其他坐标。

按键精灵后台模拟鼠标按键
\/\/下面这句用于向后台窗口句柄(变量:Hwnd)发送一个鼠标移动到客户区域(坐标:633, 276)处 Plugin Bkgnd.MoveTo(Hwnd, 633, 276)\/\/下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:633, 276)处发送一个鼠标右键单击 Plugin Bkgnd.RightClick(Hwnd, 633, 276)Delay 2400000 \/\/下面这句...

怎样获得当前鼠标所在位置的窗口句柄?
if (GetCursorPos(&pNow)) \/\/ 获取鼠标当前位置 { HWND hwndPointNow = NULL;hwndPointNow = WindowFromPoint(pNow); \/\/ 获取鼠标所在窗口的句柄 if (hwndPointNow){ \/\/cout << "Success!!" << endl;char szWindowTitle[50];::GetWindowTextA(hwndPointNow, szWindowTitle, sizeof(sz...

用按键精灵键了个脚本但怎么能后台操作
Hwnd = Plugin.Window.MousePoint()Call Plugin.Bkgnd.KeyDown(Hwnd, 18)Call Plugin.Bkgnd.KeyPress(Hwnd, 114)Call Plugin.Bkgnd.Keyup(Hwnd, 18)Delay 1000 明白了没?后面的你自己改下。自己写才有意思。

...如何选定一个窗口句柄然后对其进行后台操作
Hwnd = Plugin.Window.MousePoint()这个语句是说鼠标指向的窗口,其实这个语句是实现不了后台操作的吧。 要实现后台操作,你得通过窗口标题或者类名之类的寻找并得到窗口句柄才行。用下面两个命令 本回答由提问者推荐 举报| 答案纠错 | 评论 0 6 百试通考研 采纳率:54% 擅长: 电子数码 生活 资源共享 烦恼 电脑...

按键精灵 ~ 怎样把这个脚本转换为后台运行的脚本
然后后台操作鼠标动作就行了。获得当前窗口句柄 Plugin Hwnd = Window.Foreground()将鼠标移动到某个坐标 Plugin Window.Move(Hwnd, 100, 100)下面三条命令为控制按键的语句。Plugin Window.SendKeyPress(Hwnd, x)Plugin Window.SendKeyDown(Hwnd, x)Plugin Window.SendKeyUp(Hwnd, x)...

按键精灵怎么让脚本运行指定的窗口并支持后台
Hwnd = Plugin.Window.MousePoint()\/\/向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:65)按键 Call Plugin.Bkgnd.KeyPress(Hwnd, 65)\/\/向后台窗口句柄(变量:Hwnd)发送一个鼠标移动到客户区域(坐标:0, 0)处 Call Plugin.Bkgnd.MoveTo(Hwnd, 0, 0)\/\/向后台窗口句柄(变量:Hwnd)的客户区域(...

相似回答