visual-studio-2010之获取使用 C# Process.Start 启动的程序的进程 ID

TianFang 阅读:69 2025-06-02 22:19:02 评论:0

在此先感谢您的帮助!

我目前正在使用 C# 2010 开发一个程序,该程序启动 PLink (Putty) 以创建 SSH 隧道。我试图让程序能够跟踪每个打开的隧道,以便用户可以终止那些不再需要的实例。我目前正在使用 System.Diagnostics.Process.Start 来运行 PLink(目前正在使用 Putty)。我需要在启动时确定每个 plink 程序的 PID,以便用户可以随意终止它。

问题是如何做到这一点,我使用的是正确的 .Net 命名空间还是有更好的东西?

代码片段:

private void btnSSHTest_Click(object sender, EventArgs e) 
{ 
    String puttyConString; 
    puttyConString = "-ssh -P " + cboSSHVersion.SelectedText + " -" + txtSSHPort.Text + " -pw " + txtSSHPassword.Text + " " + txtSSHUsername.Text + "@" + txtSSHHostname.Text; 
    Process.Start("C:\\Program Files (x86)\\Putty\\putty.exe", puttyConString); 
} 

请您参考如下方法:

你可以这样做:

private void btnSSHTest_Click(object sender, EventArgs e) 
{ 
    String puttyConString; 
    puttyConString = "-ssh -P " + cboSSHVersion.SelectedText + " -" + txtSSHPort.Text + " -pw " + txtSSHPassword.Text + " " + txtSSHUsername.Text + "@" + txtSSHHostname.Text; 
    Process putty = Process.Start("C:\\Program Files (x86)\\Putty\\putty.exe", puttyConString); 
    int processId = putty.Id; 
} 


标签:C#
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号