gpt4 book ai didi

vb.net - 如何在VB.NET中获取正在运行的进程名称的列表?

转载 作者:行者123 更新时间:2023-12-04 05:25:30 27 4
gpt4 key购买 nike

我试图找出一个应用程序实例(不是vb.net)是否已经在运行-因为我想启动它,但是如果它已经在运行,我不想启动它。我找到了一种检查进程是否正在运行的解决方案:

Dim proc As Integer = Process.GetProcessesByName(ProcessName).GetUpperBound(0) + 1 

如果> = 1(或仅是进程号),则返回True。

我的问题是,这是一个第三方应用程序,它的进程名称不仅是名称,还包含版本号(在运行时我可能不知道),并且它似乎也添加了* 32(所以可能如果安装在x64中,则为* 64?)。

我需要按名称获取正在运行的进程的列表,并测试“processname”是否为名称的子字符串。
但是我没有成功获取名称列表,仅获取进程ID。

最佳答案

I need to get a list of running processes, by name, and test if "processname" is a substring of the name.



您可以使用:
Dim procExists as Boolean = Process.GetProcesses().Any(Function(p) p.Name.Contains(processName))

这将浏览所有进程,如果当前执行的进程中存在任何包含 procExists的进程,则将 processName的值设置为True。如果您在64位操作系统上运行(这是WOW64标志,表明它是在64位操作系统上运行的32位进程),那么这应该可以处理未知版本号以及 *32的存在。

关于vb.net - 如何在VB.NET中获取正在运行的进程名称的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11055147/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com