2011-12-28 69 views
3

我正在研究运行在同一台机器上的一对简单的TCP服务器和客户机。 只要服务器像普通的可执行文件一样运行,一切正常。但是,只要我将服务器部署为Windows服务,客户端会一直收到SocketExecption,声明“由于目标机器主动拒绝它127.0.0.1:6692”,因此无法建立连接。作为TCP服务器的C#Windows服务在Windows下拒绝连接7

我对Windows 7相当新,但我认为有一些安全限制我不知道。在测试方面,我已经停用了病毒扫描程序以及防火墙,它们什么都没有改变。

任何人都可以给我一个提示吗?

+0

您可以使用运行服务的同一台计算机telnet到此服务吗? – 2011-12-28 11:05:05

+0

检查运行该服务的用户的授权。将此用户设置为具有成功运行应用程序的用户作为普通可执行文件的相同授权,以查看问题是否来自此处。 – ken2k 2011-12-28 11:08:13

+0

+1 - 我当前的一个项目有一个intraweb GUI(Delphi,不是C#,但是..),并且必须在交付时作为服务运行。 (( – 2011-12-28 11:23:49

回答

0

1)确保服务实际上正在运行,并且它在启动后不会停止。 2)更改运行服务的用户(4ex到本地系统)

+0

)感谢您的回答,我没有进一步讨论这个话题,因为Telnet无法使用这个服务,我猜这个问题就像@ ken2k所说的。 我解决了通过将应用程序部署为仅显示为托盘图标的简单WinForms项目来解决问题。这样通信就可以工作。 谢谢大家。 – user946924 2012-01-06 11:56:21