社区
C#
帖子详情
怎么调用c++写的,带类的dll下面某个类下属的函数
shanyang1
2019-10-13 09:30:39
c++写了一个test.dll,内部有几个类分别是class A class B class C
类A,B,C下面分别有一些函数func1,func2,func3.....
怎么调用某个类下面的函数
我用的dllimport,入口点entrypoint怎么写?
...全文
122
7
打赏
收藏
怎么调用c++写的,带类的dll下面某个类下属的函数
c++写了一个test.dll,内部有几个类分别是class A class B class C 类A,B,C下面分别有一些函数func1,func2,func3..... 怎么调用某个类下面的函数 我用的dllimport,入口点entrypoint怎么写?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yaniu
2020-03-07
打赏
举报
回复
c++/cli最好的解决办法
shanyang1
2020-03-06
打赏
举报
回复
谢谢各位,因为太复杂了,不准备用这种方法了,直接别的办法了
github_36000833
2019-10-14
打赏
举报
回复
C++函数导出基本上都是用基础类型。很少用到类的。
原因是不同的编译器,对类的具体实现可以不同。
由于布局的不同,C#并不能理解C++的类,甚至同是C++编译器,都会存在兼容的问题l。
在C#中调用C++类,不是说完全不可能,却是代价很高。不容易调试,不容易维护,得不偿失。
最可行的做法是,只用
基础类型
来导出C函数(这也是大部分Win32 API的做法)。
bloodish
2019-10-14
打赏
举报
回复
C++需要导出的API,用extern "C"包起来,按C的方法编译的方法名称不会带上参数信息. 关于怎么在托管代码中写非托管方法的声明,建议多了解一点PInovke的知识. 需要示例可以参考:Pinvoke.Net
秋的红果实
2019-10-13
打赏
举报
回复
类,只能对应C#的类 别的基础类型,网上搜下,如
https://www.cnblogs.com/chuncn/archive/2011/12/20/2294096.html
CyberLogix
2019-10-13
打赏
举报
回复
吧这个类导出来,加上类的头文件,就可以使用 啊
shanyang1
2019-10-13
打赏
举报
回复
没有对应的,是用户自己建立的class,下面一堆的函数,比如a::func1,b::func2之类的
问题就在于,不知道entrypoint填什么好,我使用dependency工具去查这dll内部的函数,都是一堆问号开头的比如?a@func1@!@#$%这类的函数名,直接拷贝了填是可以但是会提示内存出错,怀疑是函数调用入口问题
不知道这类带有class的函数要怎么调用,以前用过都是直接import dll然后entrypoint写函数名就可以了,但是现在因为dll里面的函数都在每个类下面,就不知道entrypoint写啥好了
c++
写
的
带
类
的
dll
怎么
调用
下面
某个
类
下属
的
函数
c++
写
了一个test.
dll
,内部有几个
类
分别是classAclassBclassC
类
A,B,C
下面
分别有一些
函数
func1,func2,func3..... 怎么
调用
某个
类
下面
的
函数
我用的
dll
import,入口点entrypoint怎么
写
? 没有对应的,是用户自己建立的class,
下面
一堆的
函数
,比如a::func1,b::func2之
类
的 问题就在于,不知道entrypoi...
JavaWeb开发利用JNI
调用
C++
代码生成的
dll
进行图像二值化处理并保存
使用JNI进行Java与C/
C++
语言混合编程----在Java中
调用
C/
C++
生成的
DLL
动态链接库 JNI是Java Native Interface的英文缩
写
, 中文翻译为本地
调用
, 自从Java 1.1开始就成为了Java标准的一部分.Java
调用
C/
C++
大概有这样几个步骤 编
写
带有native方法的Java
类
, 使用java...
C++
/MFC 面试题(一)
一、面向对象 面向对象的三大特性:封装、继承、多态 封装: 封装是把客观事物抽象成
类
,并且把自己的属性和方法让可信的
类
或对象操作,对不可性的隐藏。 继承: 可以让某个
类
型的对象获得另一个
类
型的对象的属性的方法。 多态: 虽然针对不同对象的具体操作不同,但通过一个公共的
类
,它们(那些操作)可以通过相同的方式予以
调用
。 多态的实现 1)用抽象
类
实现多态 抽象
类
和抽象方法实现多态性 父
类
提供一系列规定, 约束子
类
的行为 父
类
可以提供一些共性的行为 2)用接口实现多态 生活中的接口最具代表性的就是插座,例如
vc获得窗口并枚举其子窗口
调用
函数
FindWindow(窗口
类
名,窗口标题)获得窗口的句柄,然后
调用
EnumChildWindows(父窗口,回调
函数
名,参数)来获得父窗口下的子窗口的句柄,代码实现如下 #include BOOL CALLBACK EnumChildProc(HWND hWnd,LPARAM lParam); void main(int argc, char* argv[]) {
c++
mysql编程_
C++
MySQL编程
MySQL编程需要包含头文件。该文件一般在MySQL安装目录下的include文件夹下。包含头文件还不够,还需要包含“libmysql.lib”库,一般在lib文件夹下。MySQL编程与Socket编程非常相似,唯一不同的是MySQL使用的是MYSQL结构体,而Socket使用的是SOCKET。因此需要先构建一个MYSQL结构体并初始化(mysql_init),使用完后需要释放该结构体(mysql...
C#
110,534
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章