您的位置:首页 > 编程语言 > C语言/C++

c#调用c++写成的dll文件

2012-06-04 23:32 281 查看
c#调用c++写成的dll文件

首先是c++写的声明文件

// Inclusion guard

#ifndef _DLLTUT_DLL_H_

#define _DLLTUT_DLL_H_

// Make our life easier, if DLL_EXPORT is defined in a file then DECLDIR will do an export

// If it is not defined DECLDIR will do an import

#if defined DLL_EXPORT

#define DECLDIR __declspec(dllexport)

#else

#define DECLDIR __declspec(dllimport)

#endif

// Specify "C" linkage to get rid of C++ name mangeling

extern "C"

{

// Declare 2 functions

DECLDIR int Add( int a, int b );

DECLDIR void Function( void );

}

// End the inclusion guard

#endif

测试程序的目录结构

测试代码c#

using System;

using System.Collections.Generic;

using System.Text;

using System.Runtime.InteropServices;

namespace ConsoleApplication30

{

class Program

{

static void Main(string[] args)

{

test.Function();

Console.WriteLine("result: " + test.Add(2, 3).ToString());

Console.ReadLine();

}

}

class test

{

[DllImport("..\\..\\lib\\DLLTest.dll")]

public static extern void Function();

[DllImport("..\\..\\lib\\DllTest.dll")]

public static extern int Add(int i,int j);

}

}
本文出自 “好了,是我” 博客,请务必保留此出处http://huangchaosuper.blog.51cto.com/5221102/887532
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: