c# jna调用dllc++ 的dll,报内存损坏的异常如何捕获,在c#这边如何截获异常,不让整个程序崩溃

我们知道JNA 是可以直接jna调用dllC++里面的函数的但是这个是有类名的,我需要jna调用dll这个类里面的 getAge 和 setAge方法如何写这个JAVA代码,找了半天资料也没找到请大神指导!注意:我的意思昰不写一行C代码,纯使用java的JNA

使用C做一次中间jna调用dll,屏蔽直接使用jnajna调用dllC++使用jnajna调用dllC,用Cjna调用dllC++做一次中间桥接如果java中需要使用OCI::A的对象,需要在C測定义一个和OCI::A
成员变量一样的struct用于jna和C的数据传递。

JNA支持对象jna调用dlljna调用dll对象的函数可以实现你说的。参考链接如下:

;问题解决后请采納答案

抄袭、复制答案,以达到刷声望分或其他目的的行为在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!

}

最近封装了一个开源的C++项目生荿DLL动态jna调用dll库,将外部需要jna调用dll的函数统一以C函数的形式导出Java使用JNAjna调用dll该库。测试发现Java对库函数的jna调用dll都没有问题,为加快程序执行效率将所有库函数都会使用到的对象提取出来作为全局对象,然后提供用来初始化该对象的库函数结果在Java中jna调用dll该函数完成对象的初始化后,后面的函数依然无法使用该对象 猜测原因: 1:Java每次jna调用dll库函数都是对DLL的重新加载,所以全局变量是在一…

}

我要回帖

更多关于 dll怎么调用 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信