我有一个奇怪的问题:我的.NET 4.0 WPF应用程序正在将数据保存到ApplicationData文件夹.
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\myProgram\\";
Run Code Online (Sandbox Code Playgroud)
99.9%的案例工作得很好,但在某些计算机上它返回错误的文件夹 - 而不是返回用户文件夹,它返回另一个文件夹:
C:\Users\<user>\AppData\Roaming\myProgram\ --correct
C:\Users\s\AppData\Roaming\myProgram\ --wrong
Run Code Online (Sandbox Code Playgroud)
错误的文件夹没有写入/读取权限,因此我的程序不起作用.
程序似乎在不同的用户下运行,但如果我检查任务管理器,则用户是已记录的用户.
问题似乎发生在具有很少权限的域用户.
小智 11
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
Run Code Online (Sandbox Code Playgroud)
你创建一个文本文件来写你想要的吗?
你还需要分配一个变量,例如:
String path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
if(File.Exists(path + "filetowrite.log"))
{
......................
}
Run Code Online (Sandbox Code Playgroud)
在检查文件之前,检查目录是否存在更加确定.问候我希望能帮助你.
| 归档时间: |
|
| 查看次数: |
25309 次 |
| 最近记录: |