本地机器上的GetProcesses导致“无法连接到远程机器”
本文关键字:机器 程机器 连接 GetProcesses 导致 | 更新日期: 2023-09-27 18:02:53
在c#中,我使用以下代码:
Process[] processes = Process.GetProcesses("firefox.exe");
Console.WriteLine(processes.Length);
结果是:
InvalidOperationException: could 't connect to remote machine.
指出:
- 操作系统:Windows 7, 64位
- 我是而不是试图连接到远程机器。
- 远程注册表服务设置为Auto并且已启动
关于为什么我得到这个错误以及如何修复它的任何想法?
您认为您指定的是进程名,但实际上您指定的是机器名。
Process[] Process.GetProcesses(string machineName);
希望这有帮助,约翰。
根据http://msdn.microsoft.com/en-us/library/x8b2hzk8.aspx,此调用尝试连接到计算机名称"firefox.exe"并从中检索进程,因此出现异常。
编辑:假设你想找到本地机器上所有的"firefox.exe"进程,你可以
List<Process> ListOfFireFox = new List<Preocess>();
foreach (P in Process.GetProcesses())
{
if ( P.ProcessName.ToLower() == "firefox.exe" )
ListOfFireFox.Add (P);
};
Console.WriteLine(ListOfFireFox.Count);
试试下面的代码
Process[] processes = Process.GetProcessByName("firefox.exe");
Console.WriteLine(processes.Length);
删除。exe
Process process = Process.GetProcess("firefox");