VS2008 和 BCGControlBar 发布程序方法交流
我的开发环境:
WINDOWS VISTA HOME BASIC SP2 打上最新的补丁
VS2008 SP1 英文版 打上最新的补丁(2010年12月28日前,所有的VS2008的补丁,通过WINDWOS update 打上),CRT库的版本是:9.0.30729.4148
BCGControlBar 是 12.0版
测试环境:VMWARE + 英文 WINDOWS XP SP2 + 中文的语言包
发布的方法是:
把VS2008安装目录下的
Microsoft.VC90.CRT
Microsoft.VC90.ATL
Microsoft.VC90.MFC
Microsoft.VC90.MFCLOC
Microsoft.VC90.OPENMP
这几个文件夹,都拷到你的应用程序的运行目录下,放在同一个目录,
编译BCG库的时候要注意,虽然网上有的文章说,用VS2008编译EXE或者DLL时,要加上_BIND_TO_CURRENT_VCLIBS_VERSION这个宏,但是经过我的测试,不能加,加上这个宏编译出来的BCG库,或者EXE,反而运行不起来,可能是我的环境和他的不一样。
编译你开发的EXE时,也不要加_BIND_TO_CURRENT_VCLIBS_VERSION这个宏,我加上后,反而运行不起来。
将编译出来的BCG库和EXE,和上面列出的目录,放在VMWARE的虚拟机上,干净的XP上,测试通过。
如果你的BCG库,或者你的应用程序还用到了BCG提供的界面风格,比如OFFICE2007的界面风格,你需要编译相应风格的DLL,
也就是说,你的EXE除了需要BCGCBPRO120090.dll,也需要BCGPStyle2010Black120.dll,BCGPStyle2010Blue120.dll等等支持那些风格的DLL。那些相应风格的DLL的位置是
:D:/安装路径/BCGControlBarPro/BCGControlBarPro/BCGCBPro/Styles,就在Styles这个目录下边。
发布时,这些DLL要放在你的EXE运行目录下边,
打安装包时,将上面的目录,和你的EXE和BCG的库,都打在一个安装包里。
我用的打包程序是innosetup
还有一个要补充的,如果你的应用程序还用到了第三方的库,比如我用到了打印报表的控件,也要把相关的库的DLL,都打进去,不然也运行不起来。
欢迎大家交流。
我的邮箱: store3000@163.com