Windows services 无法连接到网络。tcp://localhost... TCP错误代码10061

Windows services 无法连接到网络。tcp://localhost... TCP错误代码10061,windows-services,nettcpbinding,net.tcp,wcf,Windows Services,Nettcpbinding,Net.tcp,Wcf,参考有关windows服务中WCF服务的视频,我创建了一个示例WCF服务,并在windows服务中使用netTcpBinding托管该服务。(因为我希望此WCF服务作为windows服务运行) 这是一项简单的服务,可添加/删除/加载员工详细信息,并由windows窗体应用程序使用。当我构建整个解决方案(由wcf服务+windows服务+客户端应用程序组成)时,这项服务运行良好,但当我想验证我的客户端是否直接引用解决方案中的项目时,因此,我从解决方案中排除了这两个服务(wcf+windows)。它

参考有关windows服务中WCF服务的视频,我创建了一个示例WCF服务,并在windows服务中使用netTcpBinding托管该服务。(因为我希望此WCF服务作为windows服务运行)

这是一项简单的服务,可添加/删除/加载员工详细信息,并由windows窗体应用程序使用。当我构建整个解决方案(由wcf服务+windows服务+客户端应用程序组成)时,这项服务运行良好,但当我想验证我的客户端是否直接引用解决方案中的项目时,因此,我从解决方案中排除了这两个服务(wcf+windows)。它停止工作,抛出一个错误,读取:

无法连接到网络。tcp://localhost:8010/EmployeeService.Service1/. 连接尝试持续的时间跨度为00:00:02.0180000。TCP错误代码10061:无法建立连接,因为目标计算机主动拒绝它127.0.0.1:8010

可能有助于回答以下问题的要点:

  • WCF服务和windows服务具有相同的app.config
  • Windows服务正在作为服务运行
这是我的客户端app.config



任何帮助都将不胜感激……

我自己找到了答案,希望它能帮助其他人寻找答案

我发现没有触发worker_DoWork()的事件,所以添加worker.RunWorkerAsync();如下面的代码所示,您的windows服务

protected override void OnStart(string[] args)
{                    
    worker = new BackgroundWorker();
    worker.RunWorkerAsync();
    worker.DoWork += new DoWorkEventHandler(worker_DoWork);                
}

从客户端项目中删除服务引用,然后再次添加,因为它会更改您的app.config文件。

只是一个简短的提示,可能会对某些人有所帮助:

这个错误出现在两台控制Perkin Elmer-Thermo Fisher科学液体处理装置(机器人)的计算机之间

McAfee Antivirus干扰了他们的通信,卸载McAfee消除了错误。 MS Security Essentials防病毒软件未进行干扰

protected override void OnStart(string[] args)
{                    
    worker = new BackgroundWorker();
    worker.RunWorkerAsync();
    worker.DoWork += new DoWorkEventHandler(worker_DoWork);                
}