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

时间:2011-06-07 08:44:32

标签: vb.net user32

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

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

显示Id为1796的流程未运行,但程序已经打开

1 个答案:

答案 0 :(得分:1)

Handle!= IdToString()不会为您提供流程名称:

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

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

如果您选择严格打开,则您已收到关于您在处理和标识之间的混合的警告,因为Handle返回IntPtr,但GetProcessById期望Integer 1}}。