通过线程ID获得窗口句柄的方法
首先创建进程:
STARTUPINFO si;
PROCESS_INFORMATION pi;
if( !CreateProcess( NULL, // No module name (use command line).
"11111//111.exe", // Command line.
NULL, // Process handle not inheritable.
NULL, // Thread handle not inheritable.
FALSE, // Set handle inheritance to FALSE.
0, // No creation flags.
NULL, // Use parent's environment block.
NULL, // Use parent's starting directory.
&si, // Pointer to STARTUPINFO structure.
&pi) // Pointer to PROCESS_INFORMATION structure.
)
{
AfxMessageBox( "程序被迫终止!." );
exit(1);
}
然后用以下方法获得窗口句柄:
GUITHREADINFO gui;
gui.cbSize = sizeof(gui);
GetGUIThreadInfo(pi.dwThreadId,&gui);
在GUITHREADINFO 结构体中包括的句柄的信息。
在这里有一点需要注意,在MSDN中说GUITHREADINFO 结构体在windows.h和winuser.h中定义,但是在VC6编译的时候还是提示没有定义,这时把winable.h包含进去才可以通过编译。
通过线程ID获得窗口句柄的方法相关推荐
- boost::thread编程实战(2)——获取线程id并转化为DWORD类型
1. boost::thread::id 的基础知识 ① boost::thread::id 的对象能够用来标识线程,每个正在运行的线程都可以获取一个唯一可用的线程id,可以通过调用 boost::t ...
- 在linux上获得线程id的方法
From: http://www.linuxidc.com/Linux/2014-01/94723.htm 我使用了第二种方法,很方便: #define gettid() syscall(__NR_g ...
- Java 线程实例一(查看线程是否存活、获取当前线程名称、状态监测、线程优先级设置、死锁及解决方法、获取线程id、线程挂起)
查看线程是否存活 以下实例演示了如何通过继承 Thread 类并使用 isAlive() 方法来检测一个线程是否存活: public class TwoThreadAlive extends Thre ...
- C# API之常用操作窗口类函数详解[查找所有窗口、获取目标句柄的类名、获取窗口文本、获取当前活动窗口、通过窗口句柄获取线程ID、获取指定窗口位置]
/// <summary>/// 查找所有窗口(只要是在进程里面的)/// 如果不限制类名或者标题使用null代替/// </summary>/// <param nam ...
- linux c 获取 进程 线程 id
有些时候,需要在Log中打出进程或线程的ID,以便调试.查找问题. 获取进程ID #include <unistd.h> pid_t getpid(void); 获取线程ID // 方法1 ...
- Java经典面试题:一个线程两次调用start()方法会出现什么情况?
大家好,我是 Oracle首席工程师杨晓峰. 今天想和大家深入聊聊线程,相信大家对于线程这个概念都不陌生,它是Java并发的基础元素,理解.操纵.诊断线程是Java工程师的必修课,但是你真的掌握线程了 ...
- GetWindowThreadProcessId 获得窗口所在进程ID和线程ID
GetWindowThreadProcessId 获得窗口所在进程ID和线程 在得到窗口句柄后我们可以通过GetWindowThreadProcessId这个函数来获得窗口所属进程ID和线程ID,从而 ...
- Linux下获得线程ID syscall(224)
From: http://blog.163.com/onx0320@126/blog/static/164736436201252574720314/ 对于Linux线程,也许大家并不陌生,而我们通常 ...
- 另一种将线程并入应用程序的方法-委托
委托的同步 声明一个委托: public delegate int BinaryOp(int x, int y); BinaryOp编译后,其所属程序集将包含一个根据委托声明动态生成的类的定义,将会生 ...
最新文章
- 面向可解释的NLP:北大、哈工大等提出文本分类的生成性解释框架
- 每日一皮:CPU的新用途,要不要试试?
- oracle查询某个用户下的所有视图
- c语言微秒级延迟程序,C语言中生产随机数及计算运行时间(微秒级)
- 华为Mate系列新机海外亮相 或将于MWC2019发布
- java实现对象转换为map、xml字符串转化为map、map转化为xml字符串
- Android Studio connot resolve symbol XXX 无法解析的符号
- 打开服务的方法,cmd上直接输入:services.msc
- vmware安装macos
- C语言基础级——标准输入和输出
- java解析json天气api,使用Postman获取天气接口API(Json格式)
- SUSE(Linux操作系统)
- 步进电机主要技术参数
- python爬取天极网手机信息代码
- 办公室桌面计算机,我的办公室桌面(一切为了简洁)
- OSPF 之 LSA限制
- Python用pyexiv2读写图片元数据(EXIF、IPTC、XMP)
- C#实现全盘扫描,找到符合要求的文件,并把路径写入到TXT中
- TOPSIS法(理想解法)
- go微服务框架go-micro
热门文章
- (七)JMockit 的MockUp+@Mock--基础篇
- 如何解决cmd找不到路径问题
- include_path='/usr/local/php7.0/lib/php (宝塔一键安装)报错解决方法
- C++ conversion operator
- 系分 - 案例分析 - 系统维护与设计模式
- 革文:B2B企业如何用品牌思维玩转社群营销
- SSL证书为什么会有有效期 如何有效避免SSL证书过期
- poj1330,JDOJ3055O(nlogn)做法
- 2022icpc昆明
- python123怎么注销账号_怎么注销账号