西西软件下载最安全的下载网站、值得信赖的软件下载站!

首页编程开发C#.NET → C#编程实现加密解密文件夹核心代码

C#编程实现加密解密文件夹核心代码

相关软件相关文章发表评论 来源:西西整理时间:2012/11/7 10:14:17字体大小:A-A+

作者:DebugLZQ点击:0次评论:1次标签: 加密解密

  • 类型:加密解密大小:296KB语言:中文 评分:8.0
  • 标签:
立即下载

用C#语言实现一个文件夹锁的程序,网上类似的“xxx文件夹xxx”软件很多,但是基本上都是C/C++语言实现的,且都没有提供源码(这个可以理解,毕竟是加密程序,不应该泄露源码)。

  程序的基本原理是:用C#语言重命名文件夹,通过重命名使之成为windows安全文件的类标识符。具体的方法是为文件夹添加拓展名“.{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}”

(.{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}是windows安全文件的类标识符),这时文件夹的图标就会变成一把锁,这样文件夹就被加锁了。

  程序的主界面非常简洁,截图如下:

程序中加密解密文件夹的核心代码如下

        private void btnBrowseFolder_Click(object sender, EventArgs e)
        {
          
            status = lockType;//
           

            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                DirectoryInfo d = new DirectoryInfo(folderBrowserDialog1.SelectedPath);
                string selectedpath = d.Parent.FullName + d.Name;
                if (folderBrowserDialog1.SelectedPath.LastIndexOf(".{") == -1)//通过文件夹名称,判断加密
                {                   
                    SetPwd(folderBrowserDialog1.SelectedPath);
                    if (!d.Root.Equals(d.Parent.FullName))
                    {                      
                            d.MoveTo(d.Parent.FullName + "\\" + d.Name + status);//文件夹重命名
                    }
                    else d.MoveTo(d.Parent.FullName + d.Name + status);
                    txtFolderPath.Text = folderBrowserDialog1.SelectedPath;
                   
                }
                else//解密文件夹
                {
                    status = GetStatus(status);
                    bool s = CheckPwd();
                    if (s)
                    {
                        File.Delete(folderBrowserDialog1.SelectedPath + "\\key.xml");
                        string path = folderBrowserDialog1.SelectedPath.Substring(0, folderBrowserDialog1.SelectedPath.LastIndexOf("."));
                        d.MoveTo(path);
                        txtFolderPath.Text = path;
                      
                    }
                }
            }
        }

程序的运行效果如下

以加密D盘下面的test文件夹为例,结果如下:

首先通过folderBrowserDialog选择相应的文件夹

输入密码,加锁

效果如下:

此时双击文件夹已经无法打开。

选择加密后的test文件夹,输入加密时输入的密码,可解锁。

test文件夹已经解密

结束语:本文件夹加密程序是通过重命名文件夹的方式实现的,加密强度较弱,牛人绕道,写出来给大家多个谈资~

    相关评论

    阅读本文后您有什么感想? 已有人给出评价!

    • 8 喜欢喜欢
    • 3 顶
    • 1 难过难过
    • 5 囧
    • 3 围观围观
    • 2 无聊无聊

    热门评论

    最新评论

    发表评论 查看所有评论(1)

    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
    字数: 0/500 (您的评论需要经过审核才能显示)