2010-07-09 99 views
0

我有一个继承System.ServiceProcess.ServiceBase的窗口服务。当以调试模式运行时(未经测试编译),线程不会看到当前的用户凭证。ServiceBase凭证

我需要凭据,所以我可以设置WebProxy,我宁愿使用服务正在运行的帐户,而不是将用户和pwd作为字符串传递。

有人可以帮我弄清楚为什么从ServiceBase继承的类中运行的代码没有登录用户的凭据吗?

回答

0

我解决了我的问题。

首先,您可以通过WindowsIdentity对象访问用户,但这毕竟不是问题。证书确实是空白的,但它是由一些项目设置引起的。

作为一种解决方案,我创建了一个新的Windows服务项目,并添加了我的原始类文件,并且所有工作都非常棒。我确实尝试过文件比较,没有发现新旧项目之间的确切原因或差异。不过,我怀疑这是清单文件(UAC)存在的事实,或者可能是我的配置文件中basicHttpBinding中的设置。