有没有办法杀死mstsc进程的某些实例。
例如,I到pc1.xyz.com.au和pc2.xyz.com.au。
现在,在c#上,我想要杀死或断开pc1.xyz.com.au。
目前,下面的代码杀死了mstsc进程的所有实例。有没有办法只断开特定的mstsc实例。
private void terminateRDP()
{
foreach (var process in Process.GetProcessesByName("mstsc"))
{
process.Kill();
}
}我尝试保存打开的进程的pid,但捕获的pid与任务栏中的不同。我正在使用下面的代码打开一个.rdp文件。
Process rdcProcess = new Process();
rdcProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\cmdkey.exe");
rdcProcess.StartInfo.Arguments = "/generic:TERMSRV/" + server + " /user:" + username + " /pass:" + password;
rdcProcess.Start();
rdcProcess.WaitForExit();
changeServerRDP(serverAddress);
if (getApplicationPath(serverList.SelectedItem.ToString()) != String.Empty)
{
changeServerRDPPath(getApplicationPath(serverList.SelectedItem.ToString()));
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\mstsc.exe");
rdcProcess.StartInfo.Arguments = "C:\\rdp\\my.rdp";
rdcProcess.Start();
rdcProcess.WaitForExit();
//pids.Add(rdcProcess.Id);
//int procID = rdcProcess.Id;
//MessageBox.Show(procID.ToString());
//opened.Add(rdcProcess);
}发布于 2015-06-22 11:49:29
如果您需要终止RDP会话,可以尝试:WTSDisconnectSession API
This stackoverflow 链接解释了如何在C#中使用它
https://stackoverflow.com/questions/30971686
复制相似问题