一、在VS2010中,C#编写DLL并使用C++调用
(1)C#编写DLL程序
建立C#编写的DLL程序 AddDll,
<1>项目类型为:类库
程序代码:
using System;
using System.Collections.Generic;
using System.Text;
namespace AddDll
{
public class Add //类必须为public
{
public int iadd(int a, int b) //方法也必须为public
{
int c = a + b;
return c;
}
}
}
(2)C++编写调用程序
建立C++的 Win32控制台应用程序UseDll,
<1>项目类型为:Win32控制台应用程序.
<2>配置:右键点击解决方案资源管理器中的 UseDll,选择“属性”,将公共语
言运行库支持设置为“公共语言运行库支持(/clr)”
程序代码:
#include "stdafx.h"
#include "stdio.h"
#using "..\AddDll\bin\Debug\AddDll.dll" //注意,要让程序找到dll文件
using namespace AddDll;
int _tmain(int argc, _TCHAR* argv[])
{
int result;
Add ^add = gcnew Add(); //注意此处的托管指针
result = add->iadd(10,90);
printf("%d",result); scanf("%s");
return 0;
为什么会报以下错误: