急!!C#调用delphi写的dll返回数组的问题...
在C#2005中调用delphi写的dll,返回值为数组。在C#2003(.net Framework 1.1版)及以下版本可输出结果,但在C#2005(.net Framework2.0)中调用就出错,被困扰好久了,哪位达人指点下迷津,不胜感谢!
procedure UnitLine(n, K, Hour: Double;var U: array of double);为输出的函数。(n,k也为double型)
在C#中调用申明:
[DllImport("f:\\mydll\\nash_line.dll")]
public static extern void UnitLine(double aa, double bb, double cc,params double[] dd); //将params去掉在.net1.1中也可输出结果,在.net2.0中都不行
调用:
double aa = 1;
double bb = 2;
double cc = 3;
double[] dd =new double[5];
UnitLine(aa, bb, cc,dd);
运行出错:"尝试读取或写入受保护的内存。这通常指示其他内存已损坏。" 出现未处理AccessViolationException.
附件为调用的dll文件.
先谢!
[此贴子已经被作者于2006-8-15 13:53:26编辑过]