警告:我对C ++一无所知。我很习惯使用C#,但这让我感到困惑。
我知道这是一个常见的问题,但我在最后几个小时非常沮丧 - 主要是因为它应该非常简单。
我正在尝试将DLL导入到VC ++ 2010中,对于我的生活,我无法弄清楚这样做的“好方法”。我有包含定义的标头,以及使用“lib”转换为.lib文件的.DEF文件。
我想做的就是能够调用DLL中包含的函数!当我尝试将其添加为引用时,我收到以下错误:无法添加对文件WindowsAccessBridge.dll的引用,因为它既不是.NET程序集也不是注册的ActiveX控件。
我可以使用LoadLibrary / GetProcAddress访问这些函数,但我真的希望有一个'drop in'解决方案,这并不意味着我必须为50多个函数编写代码。
TL; DR:如何将本机C ++ dll导入到我的项目中,以便调用其函数?我有.lib,.def和.dll文件。你的举动?
编辑 - 我意识到正确的答案是“学习你想写的语言。” - 但我真的希望有一种简单的方法来完成这项工作。
代码:
#include "StdAfx.h"
#include "WABAPI.h"
#include "AccessBridgeCalls.h"
WABAPI::WABAPI(void)
{
}
void WABAPI::Init()
{
initializeAccessBridge();
}
以下是我在Linker中的设置:
答案 0 :(得分:1)
您在源代码中包含标题:
#include <your_header.h>
然后告诉链接器使用.lib文件:
这张照片来自VS 2008,但是如果内存服务,VS 2010中的布局是相似的。