加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-17 00:03:30 所属栏目:大数据 来源:网络整理
导读:我试图找出一个应用程序(不是vb.net)的实例是否已经在运行 – 因为我想要启动它,但如果它已经运行我不想启动它.我找到了一个解决方案来检查进程是否正在运行: Dim proc As Integer = Process.GetProcessesByName(ProcessName).GetUpperBound(0) + 1 如果 =
我试图找出一个应用程序(不是vb.net)的实例是否已经在运行 – 因为我想要启动它,但如果它已经运行我不想启动它.我找到了一个解决方案来检查进程是否正在运行:
Dim proc As Integer = Process.GetProcessesByName(ProcessName).GetUpperBound(0) + 1

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

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

我需要按名称获取正在运行的进程列表,并测试“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))

这将查看所有进程,并在当前正在执行的进程中存在包含processName的任何进程时将procExists值设置为True.这应该处理未知版本号的存在以及如果你在64位操作系统上运行时可能出现的* 32(这是WOW64标志,表示它是在64位操作系统上运行的32位进程).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读