c# 拒绝访问 进程_C#拒绝访问路径在一个Windows应用程序

I've built a Windows Application using c#, on Windows 7.

Everything was working fine, so I've created a Setup Wizard project and then built it. Once I install the app, I can open it correctly, but when I try to make some action that writes a text file(with logging purposes) it crashes, thrwoing me the following error message:

UnauthorizedAccessException

Access to the path 'C:\Program Files

(x86)\MSProgram\MSProgram\log.txt' is

denied.

When I manually give that folder full rights, it works fine. Now, the question is the following:

How do I programmatically give the app rights for writing things in my app's directory? So every person that downloads it doesn't experience the same problem.

解决方案

Don't. Applications should not write data into their installation directory directly. Doing so will make the application work poorly on Windows Vista and Windows 7, since it's not the proper way of saving data.

You should instead use Environment.GetFolderPath, and write into a good location, such as the user's application data folder (Environment.SpecialFolders.ApplicationData).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值