实际上,这个的核心是用于一个 GetWindowThreadProcess 的 API 函数,通过它可以确定指定的窗口所隶属的进程。然后,结合 EnumWindows 就可以完成这一操作了。假设我们将所有的窗口句柄到一个 TList 中,我们大概的代码逻辑如下: function DoEnumProcessWnd(AW
标签: 枚举
获取当前机器上首个未使用的 TCP 端口
这个函数用于获取计算机上首个未使用的 TCP 端口以便程序使用。有时候我们并不需要一个固定的端口来提供服务,通过这个函数,我们就可以找到一个可用的端口了。这个函数如果返回 0 ,则没有任何可用的端口(几率几乎为 0 吧?),同样的方法也可以用于获取可用的 UDP 端口,换个函数而已。 uses IpRtrMib, Ip
QDataSet 枚举一到多个字段组合的所有值
我们在许多时候,需要从数据集中将一组值传递给一个列表框供用户选择。而实现这一方式的基本算法都是遍历并去重,QDataSet 提供 EnumValues 函数来完成这一功能: function EnumValues(const AFields: QStringW; AList: TStrings;AValueDelimi
QWorker更新-在Win32平台上枚举作业状态加上堆栈显示
在多线程编程中,死锁是一个绕不过去的话题,一旦发生死锁,要想知道程序死在那儿,为啥死的,是一个艰难的选择。QWorker为用户新提供的EnumWorkerStatus函数,可以轻松的报告每个工作者的状态、正在处理的作业、及工作者处理作业的堆栈调用情况,通过跟踪这些信息,大家可以方便的抓取到每个工作者当前在干什么,从而可