我的“应用程序无法正常启动0xc000007b”

出错程序关键词:win7_x64, mfc, openssl;

今天把编译好的的win7 x64程序拿去虚拟机测试, 一运行就跳出了个““应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序。”的提示框(编译出的32位程序正常);以前没有印象碰到过这个提示,蛮新鲜;问度娘吧,一百出来一大堆,小舒一口气;随便翻了几页结果,内容差不多,都说是DirectX9没有安装或者Directx9文件损坏,想想我新装的虚拟机,这也完全有可能;于是乎,从最简单的方法开始试,

按要求把本机system32下的d3dx9_39.dll、d3dx9_40.dll、d3dx9_41.dll、d3dx9_42.dll、d3dx9_43.dll、xinput1_3.dll几个文件复制到了虚拟机syswow64目录下,运行程序,还是出错;微怔了下,好吧,还有其它方法,我再试;

随下载90+M的DirectX11.0安装程序(选11.0没选9.0是因为微软的向下兼容性确实是没话说的,安装好后比对了虚拟机syswow64与本机system32下direct相关文件确实一样),无奈网络不给力,等了二十多分钟下载好了,立即拷贝虚拟机,安装,重启一操作流水般完成,再运行程序,又出错了;微怒了! 看着百度经验中还说着第三个方法,

一搜,DirectX修复工具又有70+M!皱着眉头想着还要不要再下下来,唉,下吧,问题总得解决不是,尼玛这次提示下载完成要一个多小时,这破网速,等了1分钟剩余依然没有要改观的意思,随立即取消掉了;

问题还没解决!!肿么办!!本能的,第一想法,再去看代码吧!!!

郁闷的瞅着代码,忽然看到两行,

#pragma comment(lib, "ssleay32.lib")
#pragma comment(lib, "libeay32.lib")

会不会和这个lib文件有关?这个地方在我把程序编译成x64位时就出错了(原来用的openssl编译成的x32位库文件,重新编译出openssl x64位库文件后替换了这里,程序编译成功),有疑惑就试试呗;随打开openssl目录,从out32目录中复制这两个文件进行了替换(原来从out32dll目录赋值的),再次编译,拷贝到虚拟机,运行成功了!简单测试,程序一切正常! 问题应就出在这个地方了~但常听程序猿都有轻微强迫症....所以又从out32dll拷贝了这两个文件进行替换,再次编译拷贝虚拟机运行,错误提示框再次出现了....好吧,问题就是出在这里了....

时间: 2024-10-12 23:26:10

我的“应用程序无法正常启动0xc000007b”的相关文章

【解决】应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序。

换了SSD硬盘,装了Windows 7 SP1 x64的系统.用了一段时间,突然一天有些软件打不开了.弹出下面的提示 应用程序无法正常启动(0xc000007b).请单击“确定”关闭应用程序.第一时间马上百度搜索.百度上的回答的解决方法我都尝试了几遍,还是不行!不是Directx的问题,也不是缺少dll文件.实在找不到办法. 问题没有得到解决!我就尝试在bing.com上面搜索看看,看见一个解决方法,尝试了一下,结果还真的就给解决了!下面是解决问题的具体操作: SFC检查系统完整性来尝试修复丢失

应用程序无法正常启动0xc000007b解决方法

一 问题 1 应用程序无法正常启动0xc000007b解决方法 2 无法启动此程序,因为计算机中丢失MSVCR110.dll的解决方法 大致介绍一下这个错误是如何发生的.这个错误的本意是提示内存错误,但是通常情况下并不是内存存在问题,而是由于软件的问题产生了这个错误,多数情况下是DirectX 9.0的问题. 二 解决办法 1 方法:使用DirectX一键修复 请下载附件 方法2:只安装缺失的文件 可能缺少如下的几个文件:d3dx9_39.dll.d3dx9_40.dll.d3dx9_41.dl

应用程序无法正常启动0xc000007b怎么解决

解决方法两种: 1. 网上搜索中最常见的,缺少DirectX 9 ,去下载一个安上就OK了. 2.第二种情况比较操蛋,其实报的错误应该是:mfc100u.dll丢失 .我在两台电脑上装了相同系统后,台式机上报:应用程序无法正常启动0xc000007b.而笔记本报的错是:mfc100u.dll丢失. 按第一种方式处理,怎么弄都不行.按第二种问题解决,一下子就OK了.解决方法:用百度电脑专家一键修复即可.你可以搜索“mfc100u.dll丢失”,应该可以看到. 浪费了我一下午的时间,希望能帮到大家.

Windows下游戏程序使用32位的dll文件-解决“应用程序无法正常启动0xc000007b”问题

Windows7下刚刚安装完游戏,启动游戏时缺失dll文件,在游戏安装目录下补充之后启动出现错误: 应用程序无法正常启动0xc000007b 找到原因是在添加dll文件时使用了适合64位系统的dll文件,应该使用适合32位系统的dll文件(尽管系统为64位). 参考链接:应用程序无法正常启动0xc000007b怎么解决 猜测原因是可能游戏制作时使用的全部是适合32系统的动态链接文件.

vs2012环境下,应用程序无法正常启动0xc000007b

今天在编译程序的时候,需要切换32位和64位,分别编译版本. 当前运行环境是64位,转编译32位,编译通过,但是启动却产生这样的错误(从32位直接转换为64位,也是出现同样的错误): 解决办法很简单,关闭当前的vs,重新启动解决方案,就ok了. 注意:每次切换编译环境,编译通过后,都需要重启vs. vs2012环境下,应用程序无法正常启动0xc000007b

windows安装mysql5.7教程 (MSVCR120.dll丢失。应用程序无法正常启动0xc000007b)

1.准备好的mysql压缩包解压,我使用的是mysql-5.7.28-winx64,如果没有压缩包,可以去网上下,也可以到我的QQ资源群免费下1067672418 这里我改了一下名字,mysql-5.7 2.配置环境变量 右击我的电脑/计算机,点击属性,打开高级系统设置,点击环境变量. 变量名:MYSQL_HOME 变量值:B:\mysql\mysql-5.7  这里是你mysql的位置 path里添加:%MYSQL_HOME%\bin 3. 此版本MySQL并没有创建data目录及my.ini

Error:“应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序。”

我的电脑是 win7 64bit,用 VS2012 跑网上下载的程序,Realease | x64 模式下出现该错误. 问题出在 freeglut.dll 是 32bit 下的 dll,需要换成 64bit 下的dll,才能正常运行. 总结: 此问题的解决办法就是32bit的应用程序要使用32bit下的.dll 64bit下的应用程序要使用64bit下的.dll文件.

应用程序无法正常启动0xc000007b

参考: http://jingyan.baidu.com/article/ff42efa9181bbbc19e22022f.html DirectX修复工具: http://blog.csdn.net/vbcom/article/details/7245186

Windows Server2008安装mysql5.6出现程序无法正常启动(0xc000007b)

下载 到官网下载mysql5.6版本,msi安装包只有32位无64位 移动到指定文件夹下,解压文件 添加环境变量 变量名:MYSQL_HOME 变量值:C:\Program Files\mysql 即为mysql的自定义解压目录. 再在Path中添加  %MYSQL_HOME%\bin 注册为windows系统服务 1)从控制台进入到MySQL解压目录下的 bin 目录下(注意 cmd最好以管理员身份运行): 2)输入服务安装命令: mysqld install MySQL --defaults