易语言如何通过进程取软件窗口标题

易语言如何通过进程取软件窗口标题,第1张

如题目:易语言 知道进程名如何提取窗口句柄?我想写一个 扫描YY窗口名字是否和指定名字一样的小软件不料最后测试 那个句柄是一个变量 他会变所以想知道怎么弄 如果谁有好思路告诉我下也可以 谢谢了先 我的思路 :单击按钮1判断 我提供的一段文本是否存在在这个指定进程的标题中如果存在 d出信息框 提示“窗口已经打开”如果不存在 d出 “窗口未打开”请高手帮帮我 谢谢哦~

也知道窗口的类名 就是不知道 标题未知的部分用什么代替 本人新手刚刚学易语言 在网上查了半天 也没综合个答案 出来 求 知道的 解答下 谢谢了

调用SystemDiagnostics;

Process[] process = ProcessGetProcesses();

foreach(Process p in process)

{

ConsoleWriteLine(pMainWindowTitleToString());

}

ConsoleReadLine();

要自动的话直接超级模块里的取句柄(进程)即可

但有些东西没办法进行自动,准只能靠匹配下标或者根据窗口的类型信息来获取如标题,类名,或者窗口所对的那个进程是什么

我这里举两个关于怎么取窗口的例子,我个人推荐是不要什么自动的,要人工前期获取,并后期绝对的方式来获取到

方法1,取所有窗口列表()这个易语言自带有,然后根据取这个窗口所对应的进程进行判断即可取得

方法2,枚举所有关于某进程名的进程pid,然后再枚举进程内所有父级窗口然后逐一进行筛选(根据事先使用彗星小助手等工具取得下标或窗口类名)匹配,得到窗口结果即可

方法/步骤

启动易语言,新建Windows窗口程序。

选择‘程序’(数字1处)-->双击‘DLL命令’(数字2处)--> 右键单击如图标注(数字3处) ---选择‘新建DLL命令’。

输入如下图所示信息。途中所使用的DLL可以获取与指定窗口关联在一起的一个线程和进程标识符。其参数一填写指定窗口句柄,参数二填写一个变量,在使用这个命令后,在参数二中填写的变量,其值将自动变更为进程标识符。

双击启动窗口,写下如图所示代码,其输出值为本程序的进程ID,其值和使用任务管理器获得的值相同。

The GetProcessHandleFromHwnd function retrieves a process handle from a window handle HANDLE WINAPI GetProcessHandleFromHwnd( HWND hwnd, ); 这个函数通过窗口句柄获得进程句柄。有了进程句柄,PID是不是就知道怎么获得了?什么?不知道?那我告诉你,GetProcessId可以通过进程句柄获得进程ID: DWORD WINAPI GetProcessId( __in HANDLE Process );

以上就是关于易语言如何通过进程取软件窗口标题全部的内容,包括:易语言如何通过进程取软件窗口标题、c# 得到所有打开的窗口程序名和标题、易语言如何取进程的窗口标题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9632123.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存