当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>Visual C++教程

用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 等数据库软件无法对其进行读写。只有经过解密之后,才能被其识别。

相关内容
赞助商链接