如果两个软件运行后进程名是一样的如何只在其中一个进程使用动作?

使用问题 · 1725 次浏览
超级左手 创建于 2021-11-29 17:22

请教一下!如果两个软件运行后进程名是一样的!如何只在其中一个进程执行脚本!万分感谢!


回复内容
CL 2021-11-29 17:25
#1

是同一个软件还是两个不同软件? 不同软件可以修改exe名称试一下。

同一个软件的话,如果是quicker启动的,可以在启动的时候获取pid。如果不是的话,可能就要想办法从窗口标题之类的地方来区分了。

超级左手 2021-11-29 17:36 :

是两个软件一个是通达信官方版本 另一个是券商的通达信!但是两个运行后进程名字一样!

CL 回复 超级左手 2021-11-29 17:36 :

要执行什么脚本?

超级左手 2021-11-29 17:39 :

在网页或者别的聊天窗口复制名字后激活官方通达信窗口发送信息打开对应股票

CL 回复 超级左手 2021-11-29 17:41 :

这个可能用查找窗口比较好,根据窗口类名、标题

超级左手 2021-11-29 17:44 :

请问激活窗口的时候只能填写进程名字和pid吗?我之前填写别的好像没反应?我一个小白编程方面不懂!

超级左手 2021-11-29 18:28 :

感谢解答  晚上或者明天我试试看!但愿我能搞定!!

超级左手 2021-11-30 09:07 :

修改进程名字程序无法运行了,不过通过查找窗口然后pid激活成功了 可以正常识别了!感谢感谢!已解决!

CL 回复 超级左手 2021-11-30 09:10 :
👍👍 查找窗口得到句柄就可以直接操作窗口了,不需要再绕pid一下.
超级左手 2021-11-30 21:18 :
好像还是有点问题!还是需要用进程来激活软件窗口!因为我为了获得pid是用窗口名来得到的 这个通达信在初始界面是一个窗口名 如果切换到了别的界面窗口名竟然也跟着变化了!另外这两个软件都无法修改文件名来改变区分进程名!今天弄了很久,不懂编程 好费劲.......
超级左手 2021-11-30 21:43 :

现在的问题是两个相同进程只需要激活其中的一个!激活进程需要pid pid获得又需要窗口信息 但是窗口信息在界面变化的情况下是会变得....我想的脑阔疼.....

CL 回复 超级左手 2021-11-30 21:59 :

两个程序路径不同?可以在表达式里用Process类判断一下来区分。你可以试试把两个路径放这里,我帮你写一个试试。

超级左手 2021-12-01 08:30 :

是的路径不同!第一个D:\tdx\tdxw.exe 第二个D:\zd_hyzd\TdxW.exe 对第一个始终有效! 那就麻烦您了!

CL 回复 超级左手 2021-12-01 08:49 :

https://getquicker.net/subprogram?id=c65dd5d9-787a-40e8-11b5-08d9b4615e28 用这个子程序,在参数里设定好完整路径D:\tdx\tdxw.exe应该就可以了。

超级左手 2021-12-01 09:58 :
我运行了代码但是显示获取特定路径失败...另外我测试了直接填写pid是能够激活窗口的.
超级左手 2021-12-01 09:19
#2

是有什么问题吗?

CL 2021-12-01 10:01 :

那个程序有使用管理员身份运行么?有可能缺少权限访问进程信息

超级左手 2021-12-01 10:02 :

哪个程序?

CL 回复 超级左手 2021-12-01 10:12 :

D:\tdx\tdxw.exe

超级左手 2021-12-01 10:13 :

没有的就是直接运行的打开的!

超级左手 2021-12-01 13:00
#3

按照已解决!!!作者给出程序已解决!


回复主贴