您的位置:首页 > 编程语言 > C#

C#获取用户桌面等特殊系统路径

2017-02-22 11:59 591 查看
http://blog.csdn.net/csethcrm/article/details/6163431

[c-sharp] view
plain copy

 print?

using Microsoft.Win32;  

namespace JPGCompact  

{  

    public partial class MainForm : Form  

    {  

        private void Test()  

        {  

            RegistryKey folders;  

            folders = OpenRegistryPath(Registry.CurrentUser, @"/software/microsoft/windows/currentversion/explorer/shell folders");  

            // Windows用户桌面路径  

            string desktopPath = folders.GetValue("Desktop").ToString();  

            // Windows用户字体目录路径  

            string fontsPath = folders.GetValue("Fonts").ToString();  

            // Windows用户网络邻居路径  

            string nethoodPath = folders.GetValue("Nethood").ToString();  

            // Windows用户我的文档路径  

            string personalPath = folders.GetValue("Personal").ToString();  

            // Windows用户开始菜单程序路径  

            string programsPath = folders.GetValue("Programs").ToString();  

            // Windows用户存放用户最近访问文档快捷方式的目录路径  

            string recentPath = folders.GetValue("Recent").ToString();  

            // Windows用户发送到目录路径  

            string sendtoPath = folders.GetValue("Sendto").ToString();  

            // Windows用户开始菜单目录路径  

            string startmenuPath = folders.GetValue("Startmenu").ToString();  

            // Windows用户开始菜单启动项目录路径  

            string startupPath = folders.GetValue("Startup").ToString();  

            // Windows用户收藏夹目录路径  

            string favoritesPath = folders.GetValue("Favorites").ToString();  

            // Windows用户网页历史目录路径  

            string historyPath = folders.GetValue("History").ToString();  

            // Windows用户Cookies目录路径  

            string cookiesPath = folders.GetValue("Cookies").ToString();  

            // Windows用户Cache目录路径  

            string cachePath = folders.GetValue("Cache").ToString();  

            // Windows用户应用程式数据目录路径  

            string appdataPath = folders.GetValue("Appdata").ToString();  

            // Windows用户打印目录路径  

            string printhoodPath = folders.GetValue("Printhood").ToString();  

        }  

  

        private RegistryKey OpenRegistryPath(RegistryKey root, string s)  

        {  

            s = s.Remove(0, 1) + @"/";  

            while (s.IndexOf(@"/") != -1)  

            {  

                root = root.OpenSubKey(s.Substring(0, s.IndexOf(@"/")));  

                s = s.Remove(0, s.IndexOf(@"/") + 1);  

            }  

            return root;  

        }  

    }  

}  

   




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: