Primus gradus
et cognoscetis veritatem et veritas liberabit vos.
--Johannes 8:32
Introduction
Duilib是翁淼青于2010年推出基于Win32平台——基于GDI的开源GUI库。目前(2017年)遵循MIT协议发布,参见:
https://github.com/duilib/duilib/blob/master/LICENSE
(但版权说明中谈到该项目遵循BSD协议发布,参见:https://github.com/duilib/duilib/blob/master/版权说明.txt)
Duilib具有轻量级特性,属于GUI库,不属于工具集,兼容MFC。界面设计可采用XML方式代替传统的代码书写方式。Duilib于2014年代码迁移至Github,项目地址:
https://github.com/duilib/duilib
获取方式不予赘述,下面介绍环境搭建。
Development enviroment setup
大约于2016年初,Duilib采用VisualStudio 2013编写并发布源码,而笔者仍使用Visual Studio2010(VisualStudio下载地址:https://www.visualstudio.com),所以需先配置DuiLib.vcxproj等项目配置相关文件,其中细节笔者不做讨论。以下示例以vs2010为准,版本高至vs2015皆与之类似,低版本未经测试。
下载好项目以满足版本要求的VisualStudio打开打开,卸载demos中各示例程序,在Debug模式下编译。编译生成lib文件与.dll文件。lib与.dll的文件名存在如下变化:
- Unicode字符集
- Debug配置:Lib\Duilib_ud.lib
- Release配置:Lib\Duilib_u.lib
- 多字节字符集
- Debug配置:Lib\Duilib_d.lib
- Release配置:Lib\Duilib.lib
生成动态链接库(.dll)文件命名规则与lib文件相同,Unicode字符集后缀在.dll之前加“_u.dll”,Debug模式在.dll之前加“d”或“_d”。采用何种字符集根据项目需要确定。
修改对VS2010的支持【可选】
当前Duilib支持VS2013开发环境,若要支持VS2010需要手动对项目文件进行修改。
打开DuiLib_Static.vcxproj和DuiLib.vcxproj两个项目文件,替换其中所有v110为v100。
为避免修改过于繁琐,删除或卸载(Unload)项目当中所有示例(Demo)程序,仅保留DuiLib项目。删除<directory>\duilib-master\bin和<directory>\duilib-master\lib目录下所有文件。
生成动态和静态库文件
按Debug/Release/Unicode Debug/Unicode Release四个编译选项编译项目。将<directory>\duilib-master\bin和<directory>\duilib-master\lib下所生成的动态、静态链接库保存起来以备使用。
新建项目
新建Win32项目,并添加DuiLib项目到当前解决方案集。项目名自拟。
将上一步生成的.dll和.lib文件复制到主程序文件夹下,并通过在主程序解决方案点击右键,并添加现有项目(Existing Item)添加到程序中。
将添加的项目整理到程序文件夹Duilib.libs下【可选】
至此,程序基本文件结构搭建完成。