跨语言编程 ,com组件 ,求大神指点啊

XuWuZhiYing 2012-12-16 08:26:27
假设有这样一个VC++编写的DLL(MyDll.dll,只有.lib,.dll,.h没有源代码),其中封装了一个类,以及其类函数如下(.h)
#define MyClass _LIB __declspec(dllimport)
Class MyClass _LIB MyClass
{
Public:
MyClass();
Virtual ~MyClass();

//成员函数
void Set();
BOOL Load(LPCSTR lpstrPathName);
static void convert (double ,double ,double);
protected:
//成员变量 略
Private:
//成员变量 略
}

一般而言,在C#中调用DLL封装的全局函数可以采用如下语句:
[DllImport("MyDll.dll",
CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
public static extern void MyGlobalFun(string, double,int );

问:如何在C#中调用MyDll.dll中封装的类MyClass的成员函数。

考虑将dll封装成com以便在C#中调用
但是,如何才能达到目的呢?如何才能利用类中的成员函数,如
void Set();
BOOL Load(LPCSTR lpstrPathName);
static void convert (double ,double ,double);
是不是想方法获得Myclass类的指针呢?如何获得呢?


...全文
119 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧