日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#调用C++类(以COM组件的形式)

發布時間:2023/12/20 C# 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#调用C++类(以COM组件的形式) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如果想用C#調用C/C++寫的函數,可以先將C/C++的函數寫成dll文件,由C#用DllImport的方式來調用,但是這種方法無法調用C++寫的類,如果想調用C++類,可以先把C++類封裝成COM組件,再由C#來調用。方法如下(以VS2008英文版為例說明)

一、新建一個Visual C++項目,類型為ATL Project,假設項目名為ComProject,直接點Finish即可。

二、在Solution Explorer的ComProject項目名上右擊,選擇Add->Class,選擇ATL Simple Object,在Short name里填上類名(假設為Hello),點Next,按需求進行選擇,然后點Finish。

三、切換到Class View視圖,在IHello上右擊,選擇Add->Method,為IHello接口添加一個方法,方法名為SayHello。打開Hello.cpp文件,在SayHello函數里加上MessageBox(NULL, _T("Hello"), _T("Hello"), MB_OK);,主要作測試用。

四、新建一個Visual C#項目,類型為Console Application,假設項目名為ComTest。在ComTest項目名上右擊,選擇Add Reference->Browse,在ComProject/Debug下找到ComProject.tlb這個文件,選中并點OK。

五、打開Program.cs,把代碼改成

using System;
using
ComProjectLib;
namespace ComTest
{
??? class Program
??? {
??????? static void Main(string[] args)
??????? {
??????????? HelloClass hello = new HelloClass();
??????????? hello.SayHello();
??????? }
??? }
}

六、在ComTest項目名上右擊,選擇Set as StartUp Project,把此項目設為啟動項目,然后按Ctrl+F5運行即可,如果出現Hello這個消息框,說明調用COM組件成功。

總結

以上是生活随笔為你收集整理的C#调用C++类(以COM组件的形式)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。