我有一个奇怪的问题:我的 .NET 4.0 WPF 应用程序正在将数据保存到 ApplicationData 文件夹。
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\myProgram\\";
99.9% 的情况都运行良好,但在某些计算机上它返回错误的文件夹 - 它不是返回用户文件夹,而是返回另一个文件夹:
C:\Users\<user>\AppData\Roaming\myProgram\ --correct
C:\Users\s\AppData\Roaming\myProgram\ --wrong
错误的文件夹没有写/读权限,因此我的程序无法运行。
该程序似乎在不同的用户下运行,但如果我检查任务管理器,该用户就是已登录的用户。
该问题似乎发生在权限很少的域用户身上。
Do you also创建一个文本文件来写入?
如果是这样,请保存一个文件,例如:
String path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
var filePath = Path.Combine(path, "filetowrite.log"); // Handles whether there is a `\` or not.
if (File.Exists(filePath))
{
......................
}
Note在进行任何文件操作之前,还应该检查目录是否存在。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)