无法获取进程名称(vb.net)

Posted

技术标签:

【中文标题】无法获取进程名称(vb.net)【英文标题】:fail to get procees name (vb.net) 【发布时间】:2011-09-09 21:37:39 【问题描述】:

我想创建一个可以获取应用程序名称的程序 我可以启动程序但无法获取程序名称

<br/><br/>
a = Process.Start("calc").Handle<br/>
MsgBox(a)<br/>
MsgBox(Process.GetProcessById(a).ToSt</ br>ring)<br/>
<br/>

显示 ID 为 1796 的进程未运行,但程序已打开

【问题讨论】:

【参考方案1】:

Handle!=IdToString() 不会给你进程名称:

Dim a = Process.Start("calc").Id
MsgBox(a)
MsgBox(Process.GetProcessById(a).ProcessName)

在一个消息框中显示进程 ID,然后在下一个消息框中显示“计算”。

如果您启用了 Option Strict On,您已经收到了关于您在 Handle 和 Id 之间混淆的警告,因为 Handle 返回一个 IntPtr,但 GetProcessById 期望一个 Integer

【讨论】:

oic.. ty 回复我的帖子.. ty

以上是关于无法获取进程名称(vb.net)的主要内容,如果未能解决你的问题,请参考以下文章

使用 NamePipe [进程间通信] VB.NET 传输对象

VB.NET编好程序后一运行就提示生成错误,重装VB好几遍了还是不行

vb.net编程,如何使用 appdomain 实现某进程DLL动态加载和卸载?

C#如何通过进程名称获取指定窗口的句柄,通过该句柄获取该窗口的标题?

VB.NET程序界面假死如何解决

枚举进程加载模块