.NET : Windows Service能访问网络资源吗?

今天被朋友问到这个问题:一个写好的程序,如果使用Windows Forms的方式,运行是没有问题的。但同样的代码转换为服务之后就发生了无法访问共享文件夹的问题。

我总结几点如下,供大家以后注意参考

1. windows service一般确实不是设计用来访问网络的,它们大多在本机运行。

2. 如果windows service要访问网络资源,则需要配置为network service帐号启动

a) 共享目录的权限中也要添加network service这个特殊帐号。

b) 如果用该帐号,就有一个问题,代码中不应该出现类似c:\data.txt这样的绝对路径,network service的帐号应该是不能识别这样的路径的

3. 还有一个做法就是设置为特定域帐号

a) 我觉得你设置为本地管理员是没有用的,当你的机器不在一个域里面的话

b) 该帐号必须能够在本机能够识别(可以是一个本机帐号,也可以是一个域帐号),

本文由作者:陈希章 于 2009/6/26 17:08:49 发布在:http://www.cnblogs.com/chenxizhang/
本文版权归作者所有,可以转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
更多博客文章,以及作者对于博客引用方面的完整声明以及合作方面的政策,请参考以下站点:陈希章的博客中心
posted @ 2009-06-26 17:09  陈希章  阅读(974)  评论(0编辑  收藏  举报