请教:c#调用c++类中的一个方法,我预期的做法是
c++代码:
class __declspec(dllexport) Calc
{
public:
int Add(int x, int y) { return x + y; }
};
c#调用代码:
[DllImport("HPPDemo.dll", EntryPoint = "Add", CallingConvention = CallingConvention.ThisCall)]
public static extern int Add(int x, int y);HPPDemo.dll为c++编译后生成的dll,提示没有Add接入点,请问应该怎么使用呢
c++代码:
class __declspec(dllexport) Calc
{
public:
int Add(int x, int y) { return x + y; }
};
c#调用代码:
[DllImport("HPPDemo.dll", EntryPoint = "Add", CallingConvention = CallingConvention.ThisCall)]
public static extern int Add(int x, int y);HPPDemo.dll为c++编译后生成的dll,提示没有Add接入点,请问应该怎么使用呢
解决方案 »
- 不看源代码,如何判断一个系统使用了哪些技术?
- 自己写的MySql 操作类,怎么带Where操作就没结果集呢????困扰啊!
- Web browser控件打不开网页,IE能打开是怎么回事?
- net 控件绘制原理
- 如何获取微软指纹仪Microsoft fingerprint reader中的指纹图像?
- 图片文件的上传与保存
- 文本内容装入EXCEL时的最大字符数问题
- 在程序设计时Web Services是作为业务逻辑层还是做业务逻辑层接口?????
- 为enum写了一个扩展方法,用模板,编译失败了。错在哪里?
- 如何生成控件数组?
- C# 获取系统时间,并存到字节数组中 求教
- 关于读写不同项目配置文件的问题?
我是用的c++生成的dll,如果没有类的时候在c++方法名前加__declspec(dllexport)可以c#调用到,
但在类的前面加上__declspec(dllexport) 不知道怎么调用类中的方法了
那怎么搞,想要个c#调用c++的dll例子,
调用的是c++类中的方法,就像我给出的例子那样
使用查看器,如果以方法为接入点的话,能看到Add,也能调用成功,但是以类为接入点就只能看到类了,想调用其中的方法怎么搞
我也才学调用动态库
[DllImport("HPPDemo.dll", EntryPoint = "Add", CallingConvention = CallingConvention.ThisCall)]检查这句代码是否正确,或者是直接使用[DllImport("HPPDemo.dll")]
谢,那个我看了,我明白你的意思,我也想先声明类的对象,然后调用类的方法,我现在只有一个标准c++的dll,而我又不懂c++,我该怎么用C#声明c++的类,并调用c++的方法呢?难道我要再封装成托管c++?...求教