C++控制台程序调用C#的.dll文件

以VS2012为例:

1.建一个C++的解决方案,里面包含一个C++的项目

2.同一个解决方案之下,建一个C#的“类库”文件

3.C#的代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace Bluetooth
{
    public class Bth
    {
        public void Bth_tran()
        {
            Console.WriteLine("
你猜行不行");
        }
    }
}

写完之后,将这个程序编译一下,点生成就行

 

4.C++程序

#include "stdio.h.h"
#include <conio.h>
#include <windows.h>
#using "Bluetooth\\bin\\Debug\\Bluetooth.dll"//(这里是C#的项目的绝对路径,写完整)
using namespace Bluetooth;

void bluetooth ()
{

Bth ^bth = gcnew Bth;
bth->path = "D:\\MyProjiect\\无人机源码\\opencv代码\\helloOpencv\\helloOpencv\\test.txt";
bth->Bth_tran();
}

将程序同样编译一下(调试或者生成都行),然后将C#程序的.dll文件(一般在bin\Debug文件夹之下),拷贝到C++程序的.exe文件的同目录下(一般在外层那个Debug文件夹,找找就知道了,.exe文件好找)

需要说明的是,C#程序每修改一次都要重新生成一下,然后再拷贝一次.dll文件

5.点击C++的那个项目,进入 属性->配置属性->常规->公共语言运行时支持,选择“公共语言运行时支持(/clr)”这个


然后再调试程序,应该没问题了


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值