我正在尝试使用 botan 加密库运行最基本的程序。我正在使用 Botan 1.10 32 位。我在 Windows 7 上使用他们的安装程序获得了二进制文件。IDE 是 Visual Studio 2012。
我将我的项目链接到botan.lib,但程序在启动时报告缺少botan.dll,所以我假设lib 只是链接到dll。因此,我将 botan.dll 放在了 Debug 文件夹中。
现在来解决问题。
#include <iostream>
#include <botan/botan.h>
using namespace Botan;
using namespace std;
int main(int argc, char* argv[]) {
try {
cout << "d1";
LibraryInitializer init; //exception thrown here
}
catch(exception& e) {
cout << "Exception caught: " << e.what() << std::endl;
}
cout << "d2";
return 0;
}
Intellisense 检测到一切正常。当我尝试调试时,我得到:
rsa.exe 中 0x6A1F2AA0 (botan.dll) 的第一次机会异常:0xC0000005:访问冲突读取位置 0x00310000。rsa.exe 中 0x6A1F2AA0 (botan.dll) 处的未处理异常:0xC0000005:访问冲突读取位置 0x00310000。
似乎在 botan.dll 中引发了一个异常,我无法在我身边抓住它。我不能从这里走得更远。
我在链接到图书馆时做错了什么还是有其他问题?帮助表示赞赏。