通常,我们可以使用这种方法来获取 My Documents 的路径:
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
但是,如果我的文档被重定向到另一个位置,如何获取真实路径?
通常,我们可以使用这种方法来获取 My Documents 的路径:
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
但是,如果我的文档被重定向到另一个位置,如何获取真实路径?
这就是 的全部要点Environment.GetFolderPath
,如果文件夹被重定向,它将指向重定向的位置。
试试这个(未经测试),即使你发布的内容无论如何都应该始终有效,但只是为了给你另一个选择:
[DllImport("shfolder.dll", CharSet=CharSet.Auto)]
internal static extern int SHGetFolderPath(IntPtr hwndOwner, int nFolder,
IntPtr hToken, int dwFlags, System.Text.StringBuilder lpszPath);
[STAThread]
static void Main(string[] args)
{
StringBuilder path = new StringBuilder(260);
SHGetFolderPath(IntPtr.Zero, 5, IntPtr.Zero, 0, path);
Console.WriteLine(path);
Console.Read();
}