我目前正在开发Windows服务,以便在后台下载一些电子邮件。为了便于测试,该服务的核心也可以在独立的应用程序中运行。 下载邮件(服务和独立)时没有问题,但是在运行服务时我无法获得WebRequest(在独立应用程序中找到所有内容)。 我知道,Windows服务受到本地系统帐户的限制 - 但有一种方法可以使用(Http-)WebRequest而无需手动更改服务用户。
提前致谢, 伯特
答案 0 :(得分:1)
您尝试停用代理吗?
我遇到了同样的问题,将代理设置为null修复了超时。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Proxy = null; // bypass autodetect proxy
当您作为独立应用程序运行时,将使用您的帐户代理设置。 当作为服务运行时,使用本地服务帐户并使用默认代理设置。
您还可以尝试添加断点并查找代理字段 用你的调试器。这样可以更好地查看“正在运行的服务上下文”
System.Diagnostics.Debugger.Break();