12
2018
09

使用C语言+VS2015进行静态编译


           近期准备开发一个远程控制小程序,编码调试过程中发现,在XP系统下运行报错,提示找不到"XXX.DLL" ,查其原因是动态编译所致,所以切换为静态编译,这样虽然程序大了一些,但是比起C#开发程序来说,那还是相当的小了。

设置如下:

        1、项目调试设置为Release模式。

        2、右击“项目”----"属性" ----- 配置属性 ---- 常规 -----“平台工具集” ---- "Visual Studio 2015 - windows xp(V140_XP)"

        3、右击“项目”----"属性" ----- 配置属性 ----C/C++ ------ 代码生成 ----- "运行库" ----- “多线程(/MT)”


     这样在重新编译,在Release文件夹生成的EXE程序,就可以直接运行在XP系统中了。


    注:在C/C++ 代码生成中的运行库中有这样几个对应关系

        

            多线程调试Dll (/MDd) 对应——-MD_DynamicDebug (动态Debug)

            多线程Dll (/MD) 对应————--MD_DynamicRelease (动态Release)

            多线程(/MT) 对应—————----MD_StaticRelease (静态Releas)

            多线程(/MTd)对应————---—-MD_StaticDebug (静态Debug)

        所以在调试模式中对应Debug 和 Release    D用于动态,T用于静态,带d的是debug模式的 

          

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。