Visual Studio:创建C ++ DLL并在VB代码中使用它

时间:2014-08-27 13:16:49

标签: c++ vb.net dll visual-studio-2013

使用Visual Studio 2013,我目前正在尝试使用C ++代码生成.dll,我希望将其包含在VB.NET项目中。要创建.dll,我尝试按照这些教程进行操作:

现在我的.dll项目只包含以下文件:

  • 外部依赖关系(由VS2013自动生成)
  • 头文件:stdafx.h,targetver.h(自动生成)
  • dllmain.cpp,默认入口点方法DllMain和stdafx.cpp(自动生成)
  • MyDLL.cpp并包含我应该导出的方法的实现(现在只有一个没有参数的void方法)
  • Headerfile MyDLL.h
  • Source.def(我在尝试使用__declspec(dllexport)语句后只添加了.def文件)

MyDll.h包含:

#ifndef _DLL_MYDLL_H_
#define _DLL_MYDLL_H_
#include <iostream>
#if defined DLL_EXPORT
#define DECLDIR __declspec(dllexport)
#else
#define DECLDIR __declspec(dllimport)
#endif

extern "C"
{
DECLDIR void MyMethod();
}
#endif

MyDLL.cpp包含:

#include "stdafx.h"
#include "MyDLL.h"

#define DLL_EXPORT

extern "C"
{
void MyMethod(){ 
//my code 
}

当我创建.dll(在VS2013中使用“build&gt;构建解决方案”)时,它编译时没有错误和警告。但是,当我尝试使用“project&gt; add reference”在我的VB-Project中设置引用并选择在我的DLL-Project的DEBUG-Folder中创建的.dll时,我收到一条错误,指出该引用无法添加,我应该确保该文件是可访问的,并且它是一个有效的程序集或COM组件。

我在dll / vb项目中缺少一些重要设置吗?提前感谢您的建议。

0 个答案:

没有答案