用vs2010做的程序在其他电脑上运行不了不管是debug还是release
用vs2010做的一个mfc对话框程序,在自己的电脑上可以运行。移到别人电脑上时就提示出错:开始是缺少什么mfc100ud.dll1······文件。后面我根据网上资料该...
用vs2010做的一个mfc对话框程序,在自己的电脑上可以运行。移到别人电脑上时就提示出错:开始是缺少什么mfc100ud.dll1······文件。后面我根据网上资料该了之后就提示debug assertion failed。最后我做成release也不行,在别的电脑上运行时根本没响应,不会出现任何界面。急求啊!!!!!
展开
2个回答
展开全部
编译的时候选择包含MFC的库,不要使用共享的进行编译就行了
具体在【project】->【XXX property】->【configuration properties】->【General】->use of MFC, 选择Use mfc of a static library.
原因就是你电脑装了vs2010,所以电脑里有mfc100ud.dll1,而别人的电脑没装过自然没有,所以一般的做法是用静态编译,这是常识。
具体在【project】->【XXX property】->【configuration properties】->【General】->use of MFC, 选择Use mfc of a static library.
原因就是你电脑装了vs2010,所以电脑里有mfc100ud.dll1,而别人的电脑没装过自然没有,所以一般的做法是用静态编译,这是常识。
更多追问追答
追问
知道啊 我已经改了 现在在别人电脑上提示debug assertion failed。怎么回事啊,求教
追答
出现这种情况很可能是使用了野指针,比如某个指针指向一个局部变量,而在该变量作用域外使用该指针引用了该对象。
Assertion 是断言,用于假定某个条件肯定会满足,在debug模式下,当该条件不满足时则发生阻塞而弹出该对话框;在release下会忽略断言。
这是别人给的答复,你看看
展开全部
release版称为发行版,debug版称为调试版。
debug中可以单步执行、跟踪等功能,但生成的可执行文件比较大,代码运行速度较慢。release版运行速度较快,可执行文件较小,但在其编译条件下无法执行调试功能。
release的exe文件链接的是标准的mfcdll(usemfcinasharedorstaticdll)。这些dll在安装windows的时候,已经配置,所以这些程序能够在没有安装visualc++6.0的机器上运行。
debug中可以单步执行、跟踪等功能,但生成的可执行文件比较大,代码运行速度较慢。release版运行速度较快,可执行文件较小,但在其编译条件下无法执行调试功能。
release的exe文件链接的是标准的mfcdll(usemfcinasharedorstaticdll)。这些dll在安装windows的时候,已经配置,所以这些程序能够在没有安装visualc++6.0的机器上运行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询