JsonCpp 做成Mobile(WinCE)可以使用的库

jsoncpp是一个开源的用于解析和创建json的c++的API(关于JSON的格式可以参考:http://www.entlib.net/?p=646)。官网为:http://sourceforge.net/projects/jsoncpp

下载后,可以看到在目录jsoncpp-src-0.5.0\makefiles\vs71下有关于json使用的例子工程,库工程,但是这是用于win桌面操作系统的,没有用于WINDOWS mobile的版本。以下就一步一步做一个可以在mobile下使用的jsoncpp库。
在VS2008中新建一个项目,智能设备的dll库
6597743767285738420

现在一般都用mobile6.1,因此选择mobile6的SDK,删除mobile5SDK

6598275930913370718

使用静态mfc的库,否则需要自己拷贝需要的动态mfc库,很麻烦,就用默认的吧

299207900343438967
将jsonCPP的源代码添加到工程中
6597836126262478289
我是将jsoncpp的src下面的lib_json的6个文件拷贝到本工程源代码目录中,然后再添加,当然你可以放在别的地方。
6597490879610530888
添加完后的工程:
1950903063681568727
工程配置做如下修改:
4个CPP文件不使用预编译头
6597156628077153157
6597284171424827757
指定头文件所在的目录,就是jsoncpp的include目录
1881660219410745893
这里添加预处理器JSON_DLL_BUILD是为了引出类到库中,因为jsoncpp用的是类,不需要使用def文件来引出,而是需要用微软定义的一个编译保留字指示__declspec(dllexport)。当然在使用这个库的mobile应用程序中需要JSON_DLL这个预处理器定义
可以参考jsoncpp的inlcude目录下的config.h文件。
6597672299029933477
最后需要修改一处编译错误,这是因为mobile中没有这个函数造成的,只需要注释掉相应的代码即可
1682094460922892523
声明:本文采用 BY-NC-SA 协议进行授权,本文链接:JsonCpp 做成Mobile(WinCE)可以使用的库

发表评论