欢迎投稿

今日深度:

sqlite学习笔记1:编译数据库,sqlite学习笔记

sqlite学习笔记1:编译数据库,sqlite学习笔记


首先说下我使用的是Linux环境


一 下载源码

官网下载:点这里


二 编译

1 解压

下载完成之后一般会在当前用户的“下载”目录中,首先cd到下载目录,然后创建一个文件件,用来放解压之后的文件:

mkdir sqlite

然后cd到新建的目录中,运行如下命令解压

unzip ../sqlite-amalgamation-201408081749.zip

解压之后会有四个文件:shell.c,sqlite3.c,sqlite3.h,sqlite3ext.h


2 编译

执行命令:

gcc *.c -o sqlite3 -lpthread -ldl

执行完之后将会生成一个sqlite可执行文件



SQLite数据库数据逆向编译进

想逆向编译 难度很大 我推荐你 想想自己常用的密码设置进入一个新的客户端里 再在数据库里查找加密后的密码字符串 如果和你现在的这个字符串密码相同 就可以用那个了
 

用C语言做个sqlite数据库

). 打开VC新建一个“Win32 Dynamic-Link Library”工程,命名为:sqlite32). 在接下来的对话框中选择"An empty DLL project",点 FINISH->OK3). 将源码中所有的 *.c *.h *.def 复制到工程文件夹下4). 在工程的Source File中添加你下载到的SQLite源文件中所有*.c文件,注意这里不要添加shell.c和tclsqlite.c这两个文件。5). 将 SQLite 源文件中的 sqlite3.def 文件添加到在工程的Source File中6). 在Header File中添加你下载到的SQLite源文件中所有*.h文件,7). 开始编译,Build(F7)一下也许到这里会遇到一个错误:e:\zieckey\sqlite\sqlite3\sqlite3ext.h(22) : fatal error C1083: Cannot open include file: 'sqlite3.h': No such file or directory经检查发现,源码中包含sqlite3.h都是以 #include <sqlite3.h> 方式包含的,这就是说编译器在系统默认路径中搜索,这样当然搜索不到 sqlite3.h 这个头文件啦,这时可以改为 #include "sqlite3.h" ,让编译器在工程路径中搜索,但是如果还有其他地方也是以 #include <sqlite3.h> 方式包含的,那么改源码就显得有点麻烦,好了,我们可以这样,在菜单栏依次选择:Tools->Options...->Directeries在下面的Directeries选项中输入你的 sqlite3.h 的路径,这里也就是你的工程目录.添加好后,我们在编译一下就好了,最后我们在工程目录的 Debug 目录生成了下面两个重要文件:动态链接库文件 sqlite3.dll 和引入库文件 sqlite3.lib二. 使用动态链接库下面我们来编写个程序来测试下我们的动态链接库.在VC下新建一个空的"Win32 Console Application" Win32控制台程序,工程命名为:TestSqliteOnWindows再新建一个 test.cpp 的C++语言源程序,源代码如下:// name: test.cpp// This prog is used to test C/C++ API for sqlite3 .It is very simple,ha !// Author : zieckey// data : 2006/11/28#include <stdio.h>#include <stdlib.h>#include "sqlite3.h" #define _DEBUG_int main( void ){sqlite3 *db=NULL;char *zErrMsg = 0;int rc;rc = sqlite3_open("zieckey.db", &db); //打开指定的数据库文件,如果不存在将创建一个同名的数据库文件if( rc ){fprintf(stderr, &q......余下全文>>
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2644.html NewsArticle sqlite学习笔记1:编译数据库,sqlite学习笔记 首先说下我使用的是Linux环境 一 下载源码 官网下载:点这里 二 编译 1 解压 下载完成之后一般会在当前用户的“下载”目录中,首先cd到下...
评论暂时关闭