A-A+
VS应用程序向导中MFC库的使用
在共享DLL中使用MFC 和在静态库中使用MFC区别
在应用程序向导中,“MFC的使用”选项将指示你所开发的应用程序如何连接到MFC库。默认情况下此选项为“在共享DLL中使用MFC ”。
1、选项解释
(1)在共享DLL中使用MFC:将 MFC 库作为共享 DLL 链接到应用程序。应用程序在运行时调用 MFC 库。如果应用程序由多个使用 MFC 库的可执行文件组成,则此选项会降低应用程序的磁盘和内存需求。Win32 和 MFC 应用程序都可调用 DLL 中的函数。
(2)在静态库中使用MFC:生成时将应用程序链接到静态 MFC 库。
2、选项区别
选择“在共享DLL中使用MFC”时,打包时一些MFC的DLL的内容不会被包含在EXE文件中,所以EXE文件较小,但是运行时要求系统中要有相关的DLL文件。选择“在静态库中使用MFC”时,程序打包时将DLL中的相关代码写进EXE文件中,文件较大,但是可以在没有相关DLL的机器上运行。
如果程序采用“在共享DLL中使用MFC”进行开发,在其它机器上运行时,可能会出现错误:“无法启动程序……,由于应用程序配置不正确,未能启动此应用程序。” 因此,在开发阶段的程序一般选择“在静态库中使用MFC”比较好,不用管大小以及效率,等后期打包的时候用spy等其他工具都可以,来侦测DLL等就行了。