所有Visual Studio编译的程序,只要你用到了C Runtime库的函数,比如printf等最基本的标准函数,就会链接MSVCRxx.dll,里面的xx是你编译的Visual Studio的版本号。现在的问题就是你用的VS2010,很多计算机上没有这个DLL,即使你编译成Release版本(Debug版本需要更多的库支持),依然会出现运行不了的情况。解决办法是你可以静态链接这些库,这样就不需要DLL支持,或者你让目标计算机安装Visual Studio 2010 Redistribute Package,这个包包含了VS2010编译出来的程序需要的库。
Redistribute Package的下载:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=a7b7a05e-6de6-4d3a-a423-37bf0912db84
简短描述
Microsoft Visual C++ 2010 Redistributable Package 安装 Visual C++ 库的运行时组件,使用户能够在未安装 Visual C++ 2010 的计算机上运行使用 Visual C++ 开发的应用程序。
两种情况,一是你使用的debug编译环境,而不是release编译环境,
再就是你的程序可能是在NTFS分区下保存编译的,移动到fat32分区后可能会出现这个问题。那么就要在项目属性-->配置属性-->清单工具-->使用FAT32解决方法 这里调成是。
你那是“调试版(debug)”的,不是发行版,所以在其他电脑上运行需要运行环境,说缺少什么dll文件,就是没运行环境,要是别人电脑也装上了VS,那就已经有运行环境,所以野可以打开运行
原因是VS2010向.net战略更加推进了一步,这个开发平台需要.net framework环境支持。你可以使用VC编译就行了。或者在目标电脑上安装.net framework 较新的版本。
你认为最新版本的东西能在老版本上面运行吗?
就像你的代码一样,版本不一样,你代码能一样吗?