vs2010编的C语言程序,生成了可执行文件,可是为什么在其他电脑上却不能打开。提示是找不到MVCR.dll......

我换了代码一样,在C++上编译,之后在其他电脑上能成功打开的。什么原因??

所有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++ 开发的应用程序。

参考资料:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=a7b7a05e-6de6-4d3a-a423-37bf0912db84

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-27
两种情况,一是你使用的debug编译环境,而不是release编译环境,

再就是你的程序可能是在NTFS分区下保存编译的,移动到fat32分区后可能会出现这个问题。那么就要在项目属性-->配置属性-->清单工具-->使用FAT32解决方法 这里调成是。
第2个回答  2011-03-27
你那是“调试版(debug)”的,不是发行版,所以在其他电脑上运行需要运行环境,说缺少什么dll文件,就是没运行环境,要是别人电脑也装上了VS,那就已经有运行环境,所以野可以打开运行追问

不是发行版??????怎么解决???我是在官网下的啊

第3个回答  2011-03-27
原因是VS2010向.net战略更加推进了一步,这个开发平台需要.net framework环境支持。你可以使用VC编译就行了。或者在目标电脑上安装.net framework 较新的版本。
第4个回答  2011-03-27
你认为最新版本的东西能在老版本上面运行吗?
就像你的代码一样,版本不一样,你代码能一样吗?

...可是为什么在其他电脑上却不能打开。提示是找不到MVCR.dll..._百 ...
所有Visual Studio编译的程序,只要你用到了C Runtime库的函数,比如printf等最基本的标准函数,就会链接MSVCRxx.dll,里面的xx是你编译的Visual Studio的版本号。现在的问题就是你用的VS2010,很多计算机上没有这个DLL,即使你编译成Release版本(Debug版本需要更多的库支持),依然会出现运行不了的情况。解...

...控制台程序,并生成了xx.exe文件,但在其他电脑上却无法运行?
一,如果你是在debug模式下生成的,那当然不能在别的机子里跑,改成release(发布模式)二,即使是发布模式,生成的可执行文件也是默认不包含一些组建的,在工程——设置里改一下,,好像是添加组建什么的,。。。现在用ubuntu,qt来写c\/c++,忘了。。。囧,你百度一下吧。囧 ...

VS2010编写完C语言后 启动调试 输入后按回车就退出 什么回事?
当你在VS2010中编写完C语言程序后,尝试启动调试时,按回车键程序就立即退出,这可能是由于输入法设置不当导致的。要解决这个问题,可以按照以下步骤操作:首先,打开Visual Studio 2010,而不是DEV C++,因为它可能不是VS2010的标准IDE。接着,选择"文件"->"新建"->"项目",创建一个新的C语言项目。

用的vs2010编写的c语言程序 ,这个是什么情况?怎么解决?
原因:转换到 COFF 期间失败: 文件无效或损坏 输入文件必须具有通用对象文件格式 (COFF) 。 如果输入文件不是 COFF,链接器会自动尝试将32位OMF对象转换成COFF,或运行 CVTRES.EXE 来转换资源文件。 此消息表明该链接器未能转换该文件。百度:COFF –通用对象文件格式(Common Object File Format),是一...

我用VS2010练习C语言生成窗口运行完马上就关闭了来不及看结果怎么办
两办法 方法一改程序,最后添一句 system("pause");方法二改运行方式 新开cmd.exe窗口:切换盘符 C:\\> D:切换目录 D:\\> cd mypath 执行程序:D:\\mypath>my.exe 就可以随便看了

VS2010编写完C语言后 启动调试 输入后按回车就退出 什么回事?
1、首先双击打开DEV C++程序。2、ctrl+n 新建一个源代码。3、编写程序代码的时候需要注意输入法一定要保持在英文状态。最好是在无输入法状态下输入程序代码。编写代码完成后,运行程序。4、会发现程序的确运行了,但是闪烁了一下,就退出了。更改代码添加代码 system("pause");,在return 0前,添加好...

vs2010中无法直接启动执行程序,提示找不到debug中的XXX.exe文件。必须...
这个就是VS2010的坏处,编写C语言老是要新建一个工程!具体步骤如下 1.文件->新建->项目->win32->win32控制台应用程序 2.在下面的文件名的框子里,随便写个名字,点确定 3.下一步 4.空项目前面的勾要勾上,然后再点完成 5.源文件 右击 ->新建项->代码->c++文件(.cpp),点击一下之后,...

vs2010C语言无法打开源文件#include “mdi_c.h”#include “math...
bios.h不是标准C\/C++中规定的库。--- 以下内容来自网络:头文件bios.h存放有接口函数,在tc2下应该没问题,如果是在VC下,可能不成功,因为bios.h是在DOS模式下才能调用的,而VC是基于图形、窗口的。

VS2010编程C语言时为什么显示“系统无法找到指定文件”,请高人...
用vs的c++项目编的?要设置一下,告诉vs要用c运行库,而不是默认的c++运行库

vs2010保存program.cs之后 打开保存的exe文件一秒钟就过去了 没有显示...
正常,程序里没有挂起程序的地方,整个流程走完自动退出了。可以在结尾加一句接收键盘输入的指令,程序走到这里自动停止了。

相似回答