参考:https://blog.csdn.net/penzchan/article/details/37737445
报错
项目结构为
MFC应用B.exe调用A.dll,其中A.dll调用了openssl中的内容。
在运行B.exe的时候弹框报错为:OPENSSL_Uplink no OPENSSL_Applink
从调试来看是崩溃在了:BIO_new_fp
函数上。
解决方法
在B.exe中调用函数的cpp文件添加下面内容,注意:这段话添加到A.dll中是没有用的,具体原因参考上面链接。
#ifdef __cplusplus
extern "C" {
#endif
#include "C:/Program Files (x86)/OpenSSL/include/openssl/applink.c"
#ifdef __cplusplus
}
#endif
其中:include的文件位具体路径,由于我B.exe没有导入OpenSSL库,因此不能直接用#include <openssl/applink.c>"