用户:查看:0 回复:0 评论:0 创建时间:2017-07-11T12:08:04
源代码 [文件加密.e] https://static.codemao.cn/FvPkud0i2ZhuAJwQpa44ylbbtwbe
程序 [fileCrypt.exe] https://static.codemao.cn/Fu7st55KIQ4kcYmWf1-sG948hgTV
===============================================
0.程序的下载
若您无法下载,请复制链接到迅雷下载(不用管文件名很奇怪,它是随机的)
*.e请用易语言打开。
*.exe请直接执行。
建议将EXE放在单独的文件夹中,因为该exe还会创建icons与tmp两个目录。(请不要删除!)
你可以将程序的快捷方式放到C:\Users\yezhi\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\易语言程序
方便以后使用。
▲添加到开始菜单的程序
1.特殊原理解析
本程序是一个练习作品,主要练习对注册表的修改与控制台参数的读取。本作品用到的是:修改右键菜单、修改文件关联。
文件关联代码如下:
置文件关联 (取运行目录 () + “\” + 取执行文件名 (), “cpr”, 取运行目录 () + “\icons\fileicon.ico”, “已加密的文件”)
.版本 2
.子程序 置文件关联, 逻辑型, 公开, 关联指定后缀名的文件,双击对应的文件时就运行该应用程序
.参数 关联应用程序, 文本型, 可空, 当双击对应的文件时就运行该应用程序打开
.参数 关联文件类型, 文本型, 可空, 欲关联的文件类型,如“ABC”
.参数 关联文件图标, 文本型, 可空, ICO文件路径或EXE文件路径,注销后才有效
.参数 关联类型描述, 文本型, 可空, 文件管理器在“类型”列显示的的描述
.如果真 (是否为空 (关联应用程序) 或 是否为空 (关联文件类型) 或 是否为空 (关联文件图标) 或 是否为空 (关联类型描述))
删除注册项 (#根类, “.” + “关联文件类型”)
删除注册项 (#根类, 关联文件类型 + “file\DefaultIcon”)
删除注册项 (#根类, 关联文件类型 + “file\shell\open\command”)
删除注册项 (#根类, 关联文件类型 + “file\shell\open”)
删除注册项 (#根类, 关联文件类型 + “file\shell”)
删除注册项 (#根类, 关联文件类型 + “file”)
返回 (假)
.如果真结束
.如果真 (写注册项 (#根类, “.” + 关联文件类型 + “\”, 关联类型描述 + “file”) = 真 且 写注册项 (#根类, 关联文件类型 + “file\”, 关联类型描述) = 真 且 写注册项 (#根类, 关联文件类型 + “file\DefaultIcon\”, 关联文件图标 + “,0”) = 真 且 写注册项 (#根类, 关联文件类型 + “file\shell\open\command\”, 关联应用程序 + “ ” + #引号 + “%1” + #引号) = 真)
返回 (真)
.如果真结束
返回 (假)
添加右键菜单代码如下:
添加右键 (“加密”, #引号 + 取运行目录 () + “\” + 取执行文件名 () + #引号 + “ .encry ” + #引号 + “%1” + #引号, “runas2”)
.版本 2
.子程序 添加右键, 逻辑型
.参数 标签, 文本型
.参数 命令, 文本型
.参数 命令目录, 文本型
.如果 (写注册项 (#根类, “*\shell\” + 命令目录 + “\”, 标签) 且 写注册项 (#根类, “*\shell\” + 命令目录 + “\command\”, 命令))
返回 (真)
.否则
返回 (假)
▲该命令与“添加右键菜单”不同,该命令添加的菜单是对所有文件起作用的。本程序的右键菜单将会占用注册表的 HKCR\*\shell\runas2 ,请保证这里没有其他菜单(否则将被覆盖)
删除右键菜单代码如下:
删除右键 (“runas2”)
.版本 2
.子程序 删除右键
.参数 命令目录, 文本型
运行 (“reg delete HKCR\*\shell\” + 命令目录 + “ /f”, 真, #隐藏窗口)
2.程序的基本使用方法(若看不懂,可忽略该部分,调到下一个)
▲新建一个文档用于测试加密
运行以下代码,打开加密窗口:
D: 注:此处输入exe存放盘符
cd exe存放目录
fileCrypt.exe .encry C:\Users\yezhi\Desktop\新建文件夹\测试文档.txt
▲你将会得到这个窗口。设置密码并加密,此处使用123.
▲加密后你的文件将被追加cpr后缀,请不要擅自更改,否则可能无法正常解密。
解密命令: fileCrypt C:\Users\yezhi\Desktop\新建文件夹\测试文档.txt.cpr
▲你将得到一个解密窗口。你需要提供正确密码123,如果如图中提供1234,无法解密。
▲解密后,程序将会自动去掉,还原文档。
2.用更方便的方法加密与解密
先从开始菜单中直接打开程序,记得用管喵权限(UAC)运行。
然后选择关联cpr(让你双击cpr文件就可以解密)与加入右键菜单(让你可以在右键中选取“加密”)
选择一个待加密文件
右键文件,选择加密。
设置密码并加密
完成后你会得到cpr(之所以有图标与描述,是因为cpr被关联了)
双击cpr,进行解密。需要提供加密时设置的密码。
若密码正确,文档将会解密。
3.特殊功能
解密时,你会看到有2个选项,我们尝试选择第二个。
然后确定弹出的弹窗,将会打开编辑器(默认的编辑工具)。你可以对其进行修改,接着保存。
完成编辑之后,关闭编辑器,在托盘中找到临时编辑图标,点击。
点击后,图标如果消失,说明文件已经保存了。接下来,尝试解密这个文件。
最后打开文件,你会发现临时编辑的内容已经起作用了。
===============================================
重要提示:
1.使用DES进行加密,因为RC4没有密码自校验的功能。
2.加密后文件大小应该差不多,会多出一点点(7字节左右)
3.下载链接报错与BUG报告请跟帖。