在Borland Delphi 7中使用与IKVM DLL链接的C#DLL

时间:2015-04-15 08:20:09

标签: java c# delphi com ikvm

我有一个C#DLL,用作我的Java代码的包装器(我使用 IKVM 从Java代码生成DLL)。现在我想调用使用Delphi 7中的Java代码方法的C#DLL方法。

以下是C#函数的代码:

   [DllExport]
    public static void GetAnswer()
    {
        //this is IKVM's ArrayList. Without this line the function call works fine
        ArrayList l = new ArrayList();
    }    

我在Delphi中注册我的函数:

 function GetAnswer() : Pointer; stdcall; external 'MyDllName.dll'

当调用GetAnswer()时,我得到一个Delphi异常:外部异常E0434352 如果在DLL函数中没有创建ArrayList,GetAnswer()就会成功完成。 我在位于MyDllName.dll所在的同一文件夹中的PATH env变量中有我的ikvm DLL。

我认为它与IKVM DLL可能不兼容COM的事实有关,但我不是这里的专家。所以问题是:我是否可以做我想做的事情,如果是的话,我应该采取什么步骤?

任何指针都非常感谢!

修改 正如大卫所建议的那样,提及的COM可能与此无关。

0 个答案:

没有答案