windows service 之访问权限(有NetworkService和LocalSystem的区分)
最近写了一个关于从局域网的算机上下载文件的winodws service,最初认为应该没什么大的问题。通过本地的调试也没发现问题。但是当我把程序发布后发现服务报错“访问路径被拒绝”,我的第一感觉,肯定是网络文件夹访问权限问题。那好吧,就用个最傻的方法把文件夹的权限设置成everyone.但是,我把服务跑起来后发现根本就不理你,还是报同样的错误。难道是下载文件的模块出错了?后来我把下载模块放到一个控制台程序和一个web页面中,都顺利通过。真是搞不懂,后来到网上搜一下看到思归老大的回复,是 windows service 的帐户没有权限访问网络资源。于是,我把服务的账号设置为NetworkService,在调试果然ok了。老大就是老大,厉害!但是又有了新的问题,我的写服务日志的功能失效了。原因在哪呢?是应为我的原来的service 账号是LocalSystem,service 可以找到本地文件“C:\DownLoadFileLog.txt",
private void AddTextLine(string line)
{
try
{
FileStream fs = new FileStream(@"C:\DownLoadFileLog.txt", FileMode.OpenOrCreate, FileAccess.Write); StreamWriter m_streamWriter = new StreamWriter(fs); m_streamWriter.BaseStream.Seek(0, SeekOrigin.End); m_streamWriter.WriteLine(line + "\r\n"); m_streamWriter.Flush(); m_streamWriter.Close(); fs.Close();
}
catch (Exception ex)
{ }
}
而现在我把它改为NetworkService,它当然不知道C:\DownLoadFileLog.txt 在那里了。那把它改成你的网络目录并设置为共享就ok了!
如”//192.168.8.188/share/DownLoadFileLog.txt/“。
http://www.cnblogs.com/peak-weng/archive/2008/07/29/1255485.html
windows service 之访问权限(有NetworkService和LocalSystem的区分)的更多相关文章
- 设置Windows服务的访问权限
作者:beyond 默认情况下,只有管理员组成员.LocalSystem和Power Users组成员帐户才有权启动.停止服务.为了让普通用户也可以控制该服务,我们可以手动设置其访问权限.可能有些初学 ...
- 关于windows service不能访问网络共享盘(NetWork Drive)的解决方案
我映射一个网络驱动器到本机的时候,发现本机的程序直接能访问读取网络驱动器,但是把本机的程序作为本机的windows服务运行的时候就不能访问了. Qt中的QDir::exist(folder)访问失败. ...
- 对于windows操作系统磁盘访问权限修改的手残教训
最近公司新配置的win10电脑,由于测试关于windows系统上项目的安装程序时默认使用了c盘安装,发现安装后的项目不是崩溃就是运行没结果的,偶然间发现同一个安装程序在d盘或其他非系统盘安装则正常.很 ...
- 怎样提高Windows Azure Cloud Service中的WebRole的文件访问权限
关键字:WebRole 1. 背景 Web应用程序需要读取和写入该项目下的文件的权限. 在默认情况下,W3wp.exe 和WaIISHost.exe的运行账号是Network Service,而Net ...
- Windows Service 访问远程共享权限设置
最近为实现共享目录之间的文件同步,开发了一个Windows Service. 考虑到在拷贝过程中,如果网络忽然抽风访问不了,导致文件拷贝不完整的情况,果断抛弃.Net 自带的 COPY 方法,而使用D ...
- Reporting Service部署之访问权限
原文:Reporting Service部署之访问权限 SQL Server Reporting Services 并非专门设计用于 Internet 报表部署方案,但是您可以成功地将 Reporti ...
- [转]Reporting Service部署之访问权限
本文转自:https://www.cnblogs.com/lonelyxmas/p/4112638.html 原文:Reporting Service部署之访问权限 SQL Server Report ...
- service 03 iis之服务器无访问权限
这两天在Service 03 的iis 6.0 里面配置一个aspx 的网站 ,总是遇到一个问题 401.2 无权限访问,于是去百度了一下好多的方法,基本上是关于设置匿名用户,打开IUSER用户 ...
- C#更改文件访问权限所有者(适用于各个Windows版本)
前面也提到了,前段时间在做Online Judge系统,在正式上线前有几个比较老的版本,其中第一个版本使用ACL来控制权限以确保安全(但是这个版本完全建立在IIS上,所以这样做是没效果的),遇到了一些 ...
随机推荐
- MIPS重返硅谷 放眼AI未来
MIPS最近以一家独立公司之姿重新回到了矽谷,在Tallwood的带领下积极投入原有的嵌入式业务,并放眼下一代人工智能(AI)领域. MIPS最近以一家独立公司之姿重新回到了矽谷——加州圣塔克拉拉 ...
- Xamarin.Forms开发APP
Xamarin.Forms+Prism(1)—— 开发准备 准备: 1.VS2017(推荐)或VS2015: 2.JDK 1.8以上: 3.Xamarin.Forms 最新版: 4.Prism 扩展, ...
- git 修改仓库地址
公司服务器地址换了 , 原来的git代码地址也跟着需要变 , git remote rm origin 执行该操作 , 删除原来的git地址 git remote -v 查看一下有没有删除成功 , ( ...
- ADO.NET - 批量更新或添加数据
方法一:使用SqlBulkCopy实现批量更新或添加数据. SqlBulkCopy类一般只能用来将数据批量插入打数据库中,如果数据表中设置了主键,出现重复数据的话会报错,如果没有设置主键,那么将会添加 ...
- JScript实现将指定目录下的vc工程加到解决方案
作者:朱金灿 来源:http://blog.csdn.net/clever101 main(); function main() { try { var WSShell = WScript.Creat ...
- OpenGL(十) 截屏并保存BMP文件
BMP文件格式 BMP图像又称为Bitmap(位图),是Windows系统中广泛采用的图像格式.BMP文件的数据按照从文件头开始的先后顺序分为四个部分: 我们一般见到的图像以24位图像为主,即R.G. ...
- [科普]MinGW vs MinGW-W64及其它(比较有意思,来自mingw吧)
部分参照备忘录原文: bitbucket.org/FrankHB/yslib/src/50c3e6344a5a24b2382ce3398065f2197c2bd57e/doc/Workflow.Ann ...
- WPF实现选项卡效果(2)——动态添加AvalonDock选项卡
原文:WPF实现选项卡效果(2)--动态添加AvalonDock选项卡 简介 在前面一篇文章里面,我们使用AvalonDock实现了类似于VS的选项卡(或者浏览器的选项卡)效果.但是我们是通过xaml ...
- MVC 直接或间接继承自ActionResult的类型
•ViewResult:使用View()可以指定一个页面,也可以指定传递的模型对象,如果没有指定参数则表示返回与Action同名的页面 •ContentResult:使用Content(string ...
- UNITY VR 视频/图片 开发心得(二)
上回说到了普通的全景图片,这回讲真正的VR. 由于这种图片分为两部分,所以我们需要两个Camera对象以及两个球体.首先新建一个Camera对象,并将其命名为RightEye(其它名字也无妨,只要你自 ...