C#调用DLL动态库时(动态库听说是用delphi编写的),会报内存受保护出错,具体见图片代码
14 个解决方案
#1
顶一下顶一下
#2
把dllimport定义贴出来
一般来说需要传值出来的,
如果是基本类型,就需要加ref或者out
如果是数据组需要加[In,Out]
一般来说需要传值出来的,
如果是基本类型,就需要加ref或者out
如果是数据组需要加[In,Out]
#3
接口翻译有问题
#4
[DllImport("hscom.dll")]
public static extern void Set_Harmonic_Data(double[] HAng,int[] HNum,double[] HVolt,double[] HCur);
这个"DllImport"是我定义的,估计就是这儿有问题,
public static extern void Set_Harmonic_Data(double[] HAng,int[] HNum,double[] HVolt,double[] HCur);
这个"DllImport"是我定义的,估计就是这儿有问题,
#5
应该不需要传值出来,只是需要传值进去的
#6
给个dll下载地址,反编译看下。
#7
delphi调用时,形参只写数组名就可以了,C#怎么定义接口和传参数?
#9
数据类型都是基本类型,感觉和CharSet关系不大
查调用约定(Calling convention)
__stdcall,__cdecl,__fastcall都试下
查调用约定(Calling convention)
__stdcall,__cdecl,__fastcall都试下
#10
double 并不是windows 接口的标准中的数据类型,这个肯定有问题。dllimport 是什么你不懂可以百度呀
#11
参数定义错误
#12
哪位大神能帮我完成用C#调用动态库中的Set_Harmonic_Data dll文件详见:
http://pan.baidu.com/s/1jISnjeQ ,已经有了Delphi的调用例子(见帖子)
#13
哪位大神能帮我完成用C#调用动态库中的Set_Harmonic_Data dll文件详见: http://pan.baidu.com/s/1jISnjeQ ,已经有了Delphi的调用例子(见帖子)
工程无法添加dll
#14
哪位大神能帮我完成用C#调用动态库中的Set_Harmonic_Data dll文件详见: http://pan.baidu.com/s/1jISnjeQ ,已经有了Delphi的调用例子(见帖子)
1、上次回答错了,因平时一般用C#dll的,按照引用操作来了。
2、这次重新测试了一下,虽然无法正常调用函数,但是报错跟你不一样。
很少用c++的,只能帮你到这里了
#1
顶一下顶一下
#2
把dllimport定义贴出来
一般来说需要传值出来的,
如果是基本类型,就需要加ref或者out
如果是数据组需要加[In,Out]
一般来说需要传值出来的,
如果是基本类型,就需要加ref或者out
如果是数据组需要加[In,Out]
#3
接口翻译有问题
#4
[DllImport("hscom.dll")]
public static extern void Set_Harmonic_Data(double[] HAng,int[] HNum,double[] HVolt,double[] HCur);
这个"DllImport"是我定义的,估计就是这儿有问题,
public static extern void Set_Harmonic_Data(double[] HAng,int[] HNum,double[] HVolt,double[] HCur);
这个"DllImport"是我定义的,估计就是这儿有问题,
#5
把dllimport定义贴出来
一般来说需要传值出来的,
如果是基本类型,就需要加ref或者out
如果是数据组需要加[In,Out]
应该不需要传值出来,只是需要传值进去的
#6
顶一下顶一下
#7
delphi调用时,形参只写数组名就可以了,C#怎么定义接口和传参数?
#8
#9
数据类型都是基本类型,感觉和CharSet关系不大
查调用约定(Calling convention)
__stdcall,__cdecl,__fastcall都试下
查调用约定(Calling convention)
__stdcall,__cdecl,__fastcall都试下
#10
double 并不是windows 接口的标准中的数据类型,这个肯定有问题。dllimport 是什么你不懂可以百度呀
#11
参数定义错误
#12
哪位大神能帮我完成用C#调用动态库中的Set_Harmonic_Data dll文件详见:
http://pan.baidu.com/s/1jISnjeQ ,已经有了Delphi的调用例子(见帖子)
#13
哪位大神能帮我完成用C#调用动态库中的Set_Harmonic_Data dll文件详见: http://pan.baidu.com/s/1jISnjeQ ,已经有了Delphi的调用例子(见帖子)
工程无法添加dll
#14
哪位大神能帮我完成用C#调用动态库中的Set_Harmonic_Data dll文件详见: http://pan.baidu.com/s/1jISnjeQ ,已经有了Delphi的调用例子(见帖子)
1、上次回答错了,因平时一般用C#dll的,按照引用操作来了。
2、这次重新测试了一下,虽然无法正常调用函数,但是报错跟你不一样。
很少用c++的,只能帮你到这里了