首页 | 社区 | 博客 | 招聘 | 文章 | 新闻 | 下载 | 读书 | 代码
亲,您未登录哦! 登录 | 注册

用VC++给Foxbase数据库文件加密

打印文章

分享到:
Visual C++ 是 一 种 功 能 十 分 强 大 的 程 序 设 计 语 言, 利 用 它 可 以 很 方 便。 快 捷 的 开 发 出Windows 下 的 各 种 应 用 程序。 尤 其 是 其 内 置 了 数 据 库 的 接 口, 可 使 我 们 毫 不 费 力 地 操 作Accse,FoxBASE+ 等 许 多 数 据 库 文 件。 但 在 安全 性 上, 由 于FoxBASE+ 是 一 种 早 期 的 产 品, 所 以, 不 能像Accse 那 样 为 数 据 库 文 件 本 身 加 密, 这 就 可 以 让 入 侵者 直 接 对 数 据 库 操 作 而 导 致 数 据 的 损 失。

本 文 提 供 的 方 法 可 以 做 为 一 个 小 的 模 块 放 到 你 的 应 用 程 序 中 调 用, 实 现 数 据 库 的 加 解 密。

首 先, 打 开Visual C++ 5.0 选 择New 建 立 一 个 基 于 对 话 框 的 应 用 程 序, 然 后 在 对 话 框 上 面 放 置 两 个 按 钮, 其 中一 个 标 题 叫 做 加 密, 另 一 个 标 题 叫 做 解 密。 对 应 实 现如 下:

void CAa6Dlg::OnButton1() (对应于加密按钮的单击)
{
int buf2[512],tcd,tcd1,*p1,i;
CFile cfile1;
char *pfilename;
pfilename="c:\\aa.dbf";
cfile1.Open(pfilename,CFile::modeReadWrite);
cfile1.Read(buf2,32);
p1=(int*)buf2;
p1=p1+1;
tcd=*p1;
tcd1=(tcd-1)/2;
cfile1.SeekToBegin();
cfile1.Read(buf2,tcd);
buf2[0]=buf2[0]+0x0017;
for (i=16;i


这 样, 用 本 程 序 的 加 密 功 能 加 密 的Fox 系 列 数 据 库( 如Foxbase+, Foxpro 等), 用Foxbase+,Foxpro 等 数 据 库 软 件无 法 对 其 进 行 读 写。 只 有 经 过 解 密 之 后, 才 能 被 其识 别。

本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )

编程爱好者论坛

本栏最新文章