【发布时间】:2014-03-05 21:39:40
【问题描述】:
尝试了很多例子并没有成功 我有一个用 Delphi 编写的 DLL,它导出一个返回数组的函数,然后导入 C# 应用程序。 A 成功使用一个变量:
德尔福
function GetArrayData(var testArray : integer): WordBool; stdcall; export;
begin
testArray := 1;
Result := True;
end;
C#
[DllImport("some.dll", CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Ansi)]
static extern bool GetArrayData([Out] out IntPtr IntegerArrayReceiver);
private void GetButton_Click(object sender, EventArgs e)
{
unsafe
{
IntPtr IntegerArrayReceiver = IntPtr.Zero;
GetArrayData(out IntegerArrayReceiver);
textBoxData.Text = IntegerArrayReceiver.ToString();
}
请有人可以将此代码转换为使用数组。意思是从 Delphi 导出一个数组并导入到 C# 数组。我有 Delphi 和 C# 代码的源代码。
【问题讨论】: