use*_*315 1 c# file-permissions program-files
我正在尝试在32位Program Files文件夹中创建一个文件目录(文件夹),以存储用户将在程序中创建的数据.但是,当我尝试这样做时,它一直说访问被拒绝.反正是否允许程序访问32位程序文件文件夹并向其添加后续文件夹和文件?以下是我的代码,由于没有权限而产生运行时错误.
string mainDirectory=Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86)+"\\UKC Trial Reporter Files";
if (!Directory.Exists(mainDirectory))
{
Directory.CreateDirectory(mainDirectory);
}
Run Code Online (Sandbox Code Playgroud)
存储您的数据Environment.SpecialFolder.ApplicationData,Environment.SpecialFolder.LocalApplicationData或Environment.SpecialFolder.CommonApplicationData(如果数据必须由任何用户访问).
切勿将其存储在%ProgramFiles%中.%ProgramFiles%用于...程序文件:可执行文件,dll,app.config文件.
除了安全原因之外,还有另一个原因要做到这一点:卸载时,应用程序的安装程序必须清除它创建的所有文件和文件夹.当应用程序生命周期中更改installdir中的文件列表时,这是不可能的.
幸运的是,自Windows Vista发布以来,我们就拥有了UAC.
| 归档时间: |
|
| 查看次数: |
4418 次 |
| 最近记录: |