闲来没事 ,想把自己的sdk程序放到其他电脑上运行,结果一运行,直接跳出一对话框,显示确实***.dll
经过在网上搜索,我找到了办法
注意:我们的vs在创建完win32项目后一般默认的
项目属性
----
常规
下
mfc的使用 是“使用标准的window库”
. 字符集是“unicode"
第一种:我们在不改变上面的选项 ,只需要我们在微软官方下载对应vs版本的 redist ,如果你的编译器是vs2015 ,那就是vs2015 redist,链接是
http://www.microsoft.com/en-us/download/details.aspx?
将 redist 安装在 目标电脑上。
目标电脑就可以运行你的程序。
第二种:这个较第一种要方便,只不过设置要多几步。 我们需要改变上面提到的
注意
的选项,
mfc的使用
选项改为“
在静态库中使用mfc
" ,
字符集
改为”
使用多字节字符集
“
还有就是 在
c/c++
----
代码生成 中的 运行库 更改选项为(多线程/MT)。
另外我们还需要在链接器------输入 ---------- 附加依赖项
编辑加入
ws2_32.lib
kernel32.lib
user32.lib
gdi32.lib
comdlg32.lib
advapi32.lib
kernel32.lib
user32.lib
gdi32.lib
comdlg32.lib
advapi32.lib
因为我们的程序可能用到很多库,在不知道的情况下我们都把这些添加进去,保证程序不报错。(也可以在成功生成后,逐一去掉其中的一个测试,看哪些是必须的的)
注意 :
以上的库可能不适合你的程序,所以你得看具体的报错信息 ,找相关的库, 然后添加
。
这样成功生成的程序是可以在其他电脑上(windows)系统上运行了。
如有好的建议,请告知我。