码迷,mamicode.com
首页 > 编程语言 > 详细

用C++写COM组件并用C#调用

时间:2015-09-01 10:51:08      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:c#   c++   

1、以管理员身份打开vs,特别重要,否则会不成功

技术分享

2、新建一个c++ ATL项目,如图,全部为默认设置
技术分享

3、添加一个ATL简单对象,从添加类中添加,如图
技术分享
技术分享

4、添加一个方法,注意是在类视图中添加,并按照下图设置,其余部分均为默认
技术分享
技术分享

5、然后在test.cpp文件中添加代码,生成。一个com组件就做出来了。

STDMETHODIMP Ctest::Add(LONG a, LONG b, LONG* c)
{
    // TODO: 在此添加实现代码
    *c = a + b;
    return S_OK;
}

技术分享

6、在c#中添加引用,生成的dll文件路径如图。
技术分享
引用后为:
技术分享

7、添加代码并运行

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using ATLProject1Lib;

namespace csharpMatlab
{
    class Program
    {
        static void Main(string[] args)
        {
            test a = new test();
            Console.WriteLine(a.Add(4, 7));
        }
    }
}

技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

用C++写COM组件并用C#调用

标签:c#   c++   

原文地址:http://blog.csdn.net/qq_22033759/article/details/48145173

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!