最佳答案
据我所知,你应该使用 Environment.GetFolderPath
方法,这样你就有了独立于操作系统的代码..。
WindowsXP 使用 C:\Documents and Settings\
,WindowsVista 使用 C:\ProgramData
和 C:\Users
。
我在 Windows Vista 电脑上使用下面的代码,它返回的是 C:\Documents and Settings\
目录,而不是 C:\ProgramData
目录。有什么想法吗?
string commonAppData = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
try
{
File.CreateText(
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) +
"\\mycompany\\uid");
log.Debug("Created file successfully");
}
catch (Exception ex)
{
log.Error("Unable to create the uid file: ", ex);
}