九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
編譯 wxSqlite3 總結(jié)
   wxSqlite3作為wxWidgets的擴(kuò)展組件用C++語法對(duì)Sqlite3的API進(jìn)行了封裝,為Sqlite3的使用提供了方便.

        wxSqlit3 雖然實(shí)現(xiàn)了Sqlite3的加密接口,但默認(rèn)下載的二進(jìn)制文件中確沒有實(shí)現(xiàn)加密,如果需要加密的Sqlite3,需要我們自己動(dòng)手編譯.

        在這里我將wxSqlite3編譯成Static lib來使用.注意:wxSqlite3的代碼依賴于 Sqlite3. 這里為了方便,我將Sqlite3也編譯成Static Lib.

編譯步驟如下:

分為兩大步:

一. 編譯加密的Sqlite3

二. 編譯wxSqlite3

        最新的 wxSqlite3-1.9.9 相對(duì)于以前的版本在加密實(shí)現(xiàn)源碼部分調(diào)整為純C代碼了,這對(duì)于編譯的步驟來說相當(dāng)簡單了.

一. 編譯加密的Sqlite3

1. 下載wxSqlite3-1.9.9.zip后,解壓到wxsqlite3-1.9.9

(http://sourceforge.net/projects/wxcode/files/Components/)

2. 下載www.Sqlite.org的sqlite-amalgamation-3_XXXX.zip,將壓縮包中的文件全部提取到 wxsqlite3-1.9.9\sqlite3\secure\src\codec-c 下(寫這篇文章時(shí)用的版本是3.6.23.1).

編輯 sqlite3.def , 添加 下面兩個(gè)函數(shù)導(dǎo)出

    sqlite3_rekey

    sqlite3_key

3. 打開VS,新建一個(gè)"static lib",工程名為"Sqlite3Encrypt",保存到"wxsqlite3-1.9.9\sqlite3"下.

4. 導(dǎo)入文件:只要單純的導(dǎo)入 sqlite3secure.c 這個(gè)文件就好了.

5. 設(shè)置工程屬性: (為方便使用 將Sqlite3的輸出調(diào)整到wxSqlite3工程的輸出目錄中).在這一步中,分為Debug與Release版.( 可以通過新建工程時(shí)建一個(gè)DLL工程,這樣就內(nèi)置了兩個(gè)版本的配置,然后再將"常規(guī)->配置類型"設(shè)置為"靜態(tài)庫(lib)"就可以了.)

常規(guī)->輸出目錄:

        "..\..\lib\vc_lib"

C/C++->預(yù)處理->預(yù)處理器定義:

        SQLITE3ENCRYPT_EXPORTS

        SQLITE_ENABLE_FTS3

        SQLITE_ENABLE_FTS3_PARENTHESIS

        SQLITE_ENABLE_RTREE

        SQLITE_SECURE_DELETE

        SQLITE_SOUNDEX

        SQLITE_ENABLE_COLUMN_METADATA

        SQLITE_HAS_CODEC

        CODEC_TYPE=CODEC_TYPE_AES128

C/C++->輸出文件->程序數(shù)據(jù)庫文件名:

        "..\..\lib\vc_lib\Sqlite3EncryptD.pdb" //Debug版

       "..\..\lib\vc_lib\Sqlite3Encrypt.pdb"   //Release版

管理員->輸出文件:

        $(OutDir)\$(ProjectName)D.lib //Debug版

        $(OutDir)\$(ProjectName).lib    //Release版

6. 編譯生成 Sqlite3EncryptD.lib,Sqlite3Encrypt.lib

二. 編譯wxSqlite3.

        wxSqlite3的編譯需要wxWidgets庫.去

1. 到"wxsqlite3-1.9.9\build"下找到VS的工程文件打開.這里我只編譯 "Static Unicode Debug Monolithic Static"與 "Static Unicode Release Monolithic Static" 版.

2. 設(shè)置工程屬性:

C/C++->常規(guī)->附加包含目錄:

        "C:\wxWidgets-2.9.0\lib\vc_lib\mswud";"C:\wxWidgets-2.9.0\include";..\include;..\sqlite3\include //Debug版

        "C:\wxWidgets-2.9.0\lib\vc_lib\mswu";"C:\wxWidgets-2.9.0\lib\include";..\include;..\sqlite3\include //Release版

C/C++->預(yù)處理->預(yù)處理器定義:

        WXSQLITE3_HAVE_METADATA=1 //修改0為1

        WXSQLITE3_HAVE_CODEC=1 //修改0為1

        SQLITE_HAS_CODEC //添加

3. 編譯生成. wxcode_msw28ud_wxsqlite3.lib,wxcode_msw28u_wxsqlite3.lib

使用:

        要使用 wxSqlite3,也是需要 wxWidgets庫的.

例:

1. 新建一個(gè)控制臺(tái)項(xiàng)目

2. 設(shè)置工程屬性:

C/C++->常規(guī)->附加包含目錄:

        "C:\wxWidgets-2.9.0\include"                                                  

        "C:\wxWidgets-2.9.0\lib\vc_lib\mswud" // Debug版         --- wxWidgets 庫

        "C:\wxWidgets-2.9.0\lib\vc_lib\mswu"   // Release版   /

        "??\wxsqlite3-1.9.9\include"                          // wxSqlite3 include 目錄。

鏈接器->常規(guī)->附加庫目錄:

        "C:\wxWidgets-2.9.0\lib\vc_lib";"??\wxsqlite3-1.9.9\lib\vc_lib"; // Debug版

        "C:\wxWidgets-2.9.0\lib\vc_lib";"??\wxsqlite3-1.9.9\lib\vc_lib" // Release版

鏈接器->輸入->附加依賴項(xiàng):

        wxcode_msw28ud_wxsqlite3.lib wxbase29ud.lib Sqlite3EncryptD.lib // Debug版

        Sqlite3Encrypt.lib wxcode_msw28u_wxsqlite3.lib wxbase29u.lib // Release版

3. 在代碼中引用 #include "wx/wxsqlite3.h"

 

完成~!

作者mail:fishseewater@gmail.com

打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用visual studio 2013 編寫wxWidgets程序
VC 6.0 下搭建 wxWidgets 開發(fā)環(huán)境 - VC - 開發(fā)語言 - 程序員之家
windows下的Code::Blocks + minGW + wxWidgets 開發(fā)環(huán)境搭建
【配置】win7+VS2013+OpenCV3.0.0
vs2008安裝和編譯curl庫
wxWidgets開發(fā)環(huán)境搭建(Windows XP VS2005)
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服