VS2013 使用openssl库后 程序无法正常启动0xc000007b

我的程序需要计算md5值,因此想使用openssl库来获取md5,好不容易装上了openssl,然后程序也编译完成了,结果运行exe时弹框 应用程序无法正常启动0xc000007b 。我的openssl编译的时候配置的是 perl Configure VC-WIN32 这应该是编译的32位吧,那我程序配置也是编译32位的,编译过了,为啥会出现这种无法启动的情况呢?
如果注释掉MD5_Init MD5_Update MD5_Final 程序就能运行,代码如下
MD5_CTX c;
unsigned char md5[17] = { 0 };
MD5_Init(&c);
while (1)
{
memset(tmpBuf, 0, sizeof(tmpBuf));
readLen = apkFile.Read(tmpBuf, sizeof(tmpBuf));
if (readLen>0)
{
file.Write(tmpBuf, readLen);
totalReadCnt += readLen;
//MD5_Update(&c, tmpBuf, readLen);
if (readLen < sizeof(tmpBuf))
break;//读取到文件尾
}
else if (readLen == 0)//读取到文件尾
{
break;
}
else
{
err.Format("文件读写出错! readLen=%d,totalReadCnt=%d,tmpBuf=%s", readLen, totalReadCnt, tmpBuf);
MessageBox(err);
return -1;
}
}
//MD5_Final(md5, &c);
我的电脑已经安装了DirectX11,难道跟DirectX有关系吗

2个回答

和dx应该没有关系。但是你应该以调试方式启动程序,而不是直接运行,找到出错的行和调用堆栈,才好分析。

debug模式按F5运行程序,蹦了之后点中断,看下堆栈调用窗口,找到出错的代码先

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问