我收到错误"访问路径'LocalApplicationData\MyProgram \'被拒绝." 尝试为我的日志文件创建目录时.这是我以非管理员用户身份运行程序的时候.
Directory.CreateDirectory(System.Environment.SpecialFolder.LocalApplicationData + "\\MyProgram\\");
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
谢谢
Dir*_*mar 22
LocalApplicationData只是一个枚举值.您必须结合使用它GetFolderPath:
string folder = Path.Combine(Environment.GetFolderPath(
Environment.SpecialFolder.LocalApplicationData),
"MyProgram");
Run Code Online (Sandbox Code Playgroud)
Mic*_*tta 11
您正在尝试访问枚举值LocalApplicationData,就好像它是一个字符串一样.不是.您需要找到文件夹路径GetFolderPath:
string path = Environment.GetFolderPath(
System.Environment.SpecialFolder.LocalApplicationData);
Run Code Online (Sandbox Code Playgroud)
顺便说一句,使用Path.Combine构建路径而不是手工完成它的形式更好,更不容易出错:
string path = Path.Combine(@"C:\", "dir"); // gives you "C:\dir"
Run Code Online (Sandbox Code Playgroud)
...所以你的代码最终看起来像:
string appDataPath = Environment.GetFolderPath
(System.Environment.SpecialFolder.LocalApplicationData);
string path = Path.Combine(appDataPath, "MyProgram");
Directory.CreateDirectory(path);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7164 次 |
| 最近记录: |