//错误提示:
System.Net.WebException: 无法连接到远程服务器 ---> System.Net.Sockets.SocketException: 由于目标机器积极拒绝,无法连接。
在 System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
在 System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP)
在 System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception)
--- 内部异常堆栈跟踪的结尾 ---
在 System.Net.HttpWebRequest.GetRequestStream()
在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
在 DSMT.Common.UILayer.WinForm.Login.WebLoginService.UserService.StaffLogin(BaseUserInfo userInfo, String userName, String password, String& statusCode, String& statusMessage) 位置 E:\考勤外包\DSMT.Common.UILayer.WinForms\DSMT.Common.UILayer.WinForm.Login\Web References\WebLoginService\Reference.cs:行号 301
在 DSMT.Common.UILayer.WinForm.Login.FrmLogin.Login() 位置 E:\考勤外包\DSMT.Common.UILayer.WinForms\DSMT.Common.UILayer.WinForm.Login\FrmLogin.cs:行号 249
//是WinForm调用WebService.
在Vs2005中运行根本不会出现这问题,当用VS运行过程序之后的半天或一天也可能几个小时之内在运行编译的.exe程序也不会出现这中情况,但过一天先不用VS去编译运行,直接去运行编译过的.exe文件就会出现上面的错误信息。不知道是什么原因请高手帮忙。
有什么好的解决方法吗?(我现在猜想的:1、连接问题2、SSL证书问题、3代理问题)

解决方案 »

  1.   

    你的WebService服务运行在哪里?
    如果是添加解决方案内的WebService,引用的是VS自带的服务器的地址,如果端口不固定或者服务器没启动会联接不上。
    正式发布的时候客户端引用WebService的地址要改成实际服务运行的地址。
      

  2.   

    你直接在IE里面打开webservice ,如果没有问题,说明是你写的客户端程序有问题! 
      

  3.   

    估计是服务器端没打开,你要启动webservice,客户端才能访问的。
      

  4.   

    IE打开是没问题的,但在VS里运行根本是没问题的,我在想可能是超时引起也有可能。因为我用Delphi做了个WebService调用有时候会速度很慢,要等一阵子才会有返回结果,所以我在猜想有可能是超时引起的。不过具体的还不知道
    我是添加在本地的,但这我后来也改回来了,问题还是存在。
      

  5.   

    看错误好像是无法连接吧,超时的话错误信息应该不一样你是 winform程序么?先看看app.config里面存的 webservice地址直接复制在网页地址栏上能不能打开
      

  6.   

    是winform,app.config里面配置的地址是能打开的
      

  7.   

    终于解决问题了,分大家就平分吧。在这里还是谢谢大家。
    这个问题也是靠大家的提点才会解决的。
    问题是引用换了域名就可以了,用IP就有问题,不过能用了就行了,本来要求就是要域名的,因为域名不会变,IP地址有可能会变的。