获取其他程序焦点位置句柄的方法
2010-11-23 21:56
239 查看
设置一个TIMER控件,在500ms的时间里执行
var
h,hFocus:HWND;
str:string;
h:=GetWindowThreadProcessId(GetForegroundWindow(),nil);
memo1.Lines.Add(IntToStr(h));
AttachThreadInput(h,GetCurrentThreadId,True);
hFocus:=GetFocus();
AttachThreadInput(h,GetCurrentThreadId,False);
Memo1.Lines.Add(IntToStr(hFocus));
SendMessage(hFocus,WM_SETTEXT,0,LPARAM(str));
PostMessage(hFocus,WM_KEYDOWN,VK_RETURN,0);
使用AttachThreadInput将两个进程的输入连接起来,才可以获取其他进程的焦点句柄,否则只可以获取本程序的。
GetWindowThreadProcessId用于焦点所在的控件不是窗体本身的情况。
var
h,hFocus:HWND;
str:string;
h:=GetWindowThreadProcessId(GetForegroundWindow(),nil);
memo1.Lines.Add(IntToStr(h));
AttachThreadInput(h,GetCurrentThreadId,True);
hFocus:=GetFocus();
AttachThreadInput(h,GetCurrentThreadId,False);
Memo1.Lines.Add(IntToStr(hFocus));
SendMessage(hFocus,WM_SETTEXT,0,LPARAM(str));
PostMessage(hFocus,WM_KEYDOWN,VK_RETURN,0);
使用AttachThreadInput将两个进程的输入连接起来,才可以获取其他进程的焦点句柄,否则只可以获取本程序的。
GetWindowThreadProcessId用于焦点所在的控件不是窗体本身的情况。
相关文章推荐
- 获取程序在任务栏中按钮的位置的方法
- delphi 获取其他进程句柄的几种方法
- 在VC++应用程序中获取其他程序图标的实现方法
- Qt程序关于路径、用户目录路径、临时文件夹位置获取方法
- VC获取其它程序窗口焦点方法 AttachThreadInput的用法
- Delphi 获取其他程序窗口句柄
- C#简单获取全屏中鼠标焦点位置坐标的方法示例
- 获取活动窗口输入焦点控件句柄的方法
- MFC中获取各个窗体之间的句柄或者指针对象的方法
- linux c程序中获取shell脚本输出的实现方法
- C#获取程序当前路径的方法
- c++程序崩溃生成dump文件确定错误位置方法
- C/C++获取程序执行时间的五个方法对比
- linux c程序中获取shell脚本输出的实现方法
- vc程序中运行其他程序和创建文件夹的方法:
- Delphi~通过程序窗体句柄获取程序路径
- java程序中获取项目或者目录或者文件路径的方法
- 获取Windows应用程序当前焦点控件的句柄
- javascript获取textarea光标选择位置和内容方法(IE, Firefox)
- Android获取其他包的Context实例,然后调用它的方法