开发背景:手机上的文件越来越多,想要备份下文件结果文件太多杂乱无章且重复文件冗余存储造成存储空间滥发,所以决定开发一个小工具来整理重复文件。由于本人电脑运行慢,选择VC++6.0作为开发IDE,操作虽然麻烦点,但是编译效率高,编译出来的软件兼容性好,编译的可执行文件体积小运行效率高,这个优点非常好。
设计思路:1、文件扫描基于Win API实现;2、文件对比使用运行效率较高的MD5做特征识别;3、文件记录分析存储使用轻量级别的Sqlite;
准备工作:(1)移植openssl库的MD5算法到VC++6.0里面,建立一个Win32 Console Application的带hellow world的程按 C语言通过openssl库实现AES加密解密算法和MD5加密_openssl库 c语言 进行aes-gcm 加解密-CSDN博客
https://blog.csdn.net/weixin_43921269/article/details/136268083
实现MD5的移植,运行结果如图
移植要点:
(1)VC6中cpp代码中注意加#include "stdafx.h"
(2)void* 转 unsigned char *需要强制转换。
void md5_block_data_order(MD5_CTX *c, const void *data_, size_t num)
{
const unsigned char *data = (unsigned char *)data_;
。。。。。。
准备工作:(2)Sqlite 数据设计与实现
算法实现:待续