首页 新闻 会员 周边

如何通过windows服务访问网络资源(局域网内共享的文件夹)

0
悬赏园豆:200 [已解决问题] 解决于 2014-12-29 20:49

上代码:

1 protected override void OnStart(string[] args)
2 {
3 string path=@"Y:\1.txt";
4 try
5 {
6 //File.Create("X:\\2.txt");
7 if (File.Exists(path))
8 {
9 log.Info("==============程序启动");
10 using (FileStream fs = new FileStream(path, FileMode.Open))
11 {
12 StreamReader reader = new StreamReader(fs);
13 string mes = reader.ReadToEnd();
14 log.Info("mes........................" + mes);
15 reader.Close();
16 }
17
18 }
19 else
20 {
21 log.Error("不能访问"+path);
22 }
23 }
24 catch (Exception ex)
25 {
26 log.Error("发生错误"+ex.ToString());
27 throw;
28 }
29
30 }
把服务安装以后:执行   log.Error("不能访问"+path);

映射的路径在本地可以访问,我知道是权限的问题,但是不知道怎么解决,请各位帮帮忙。

小流的主页 小流 | 初学一级 | 园豆:8
提问于:2011-05-24 14:53
< >
分享
最佳答案
0
收获园豆:200
dudu | 高人七级 |园豆:30943 | 2012-03-27 10:28
其他回答(4)
0

和执行服务的账号的权限有关,默认的服务使用的是System或Local Service账号

打开服务,设置一下具有网络访问权限的账号或管理员,再运行服务

2012 | 园豆:21230 (高人七级) | 2011-05-24 17:04
我用administrator 都不行啊。
支持(0) 反对(0) 小流 | 园豆:8 (初学一级) | 2011-06-03 13:21
0

汗,这个程序写的不大给力,在组策略中将共享访问权限设置为“允许匿名访问”,如果在程序中想实现的话,c#使用WMI来编写比较规范。

网络技术爱好者 | 园豆:398 (菜鸟二级) | 2011-06-03 16:41
呵呵,谢了啊,试试,向你请教。
支持(0) 反对(0) 小流 | 园豆:8 (初学一级) | 2011-06-03 16:49
0

当前映射才能读取文件,因此在读取之前创建映射。

小流 | 园豆:8 (初学一级) | 2012-05-14 10:51
0

请问下楼主您的程序功能实现了吗?怎么实现的,可以不可以共享

BlueEnchanter | 园豆:202 (菜鸟二级) | 2013-01-07 11:33

使用映射路径前,要再次创建一个映射连接即可。

支持(0) 反对(0) 小流 | 园豆:8 (初学一级) | 2013-01-08 09:21

@小流:3Q! 这几天我一直在弄这个,也用了个映射连接,目前测试下来好像OK

支持(0) 反对(0) BlueEnchanter | 园豆:202 (菜鸟二级) | 2013-01-08 14:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册