在共享DLL中使用MFC 和在静态库中使用MFC区别

使用VS2013,在项目属性中有一项MFC的使用,有两种设置:   1.在共享DLL中使用MFC    2.在静态库中使用MFC   

 第一种指的是打包时一些MFC的DLL的内容没有被包含在EXE文件中,所以EXE文件较小,但是运行时要求系统中要有相关的DLL文件。

 第二种是将DLL中的相关代码写进EXE文件中,文件较大,但是可以在没有相关DLL的机器上运行。    

 同时,如果程序本来是第二种方式,发给同事,在同事机器上运行时,可能会出现错误:“无法启动程序……,由于应用程序配置不正确,未能启动此应用程序。”

在共享DLL中使用MFC 和在静态库中使用MFC区别