2

我正在尝试使用 XOJO 工具中的 C# DLL 访问 C# 方法。

我遵循了 Jim 在以下帖子中定义的程序:

https://forum.xojo.com/7079-using-c-classes-in-xojo

并且一切都配置正确但是当我执行程序时,它给了我错误NilObjectException 没有被处理,即使我传递了正确的参数。

下面是 C# 代码:

using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace XojoStuff
{
    [Guid("DB038D2E-BD4D-44A7-BE64-4844FF07F870")]
    [InterfaceType(ComInterfaceType.InterfaceIsDual)]
    public interface IManagedInterface {[DispId(1)] int PrintHi(string name); }
    [Guid("AB46D07F-6920-4114-924B-5E37BED3A65E")]
    [ClassInterface(ClassInterfaceType.None)]
    public class InterfaceImplementation : IManagedInterface
    {
        public int PrintHi(string name)
        { MessageBox.Show(name); return 1; }
    }
}

以下是来自 Xojo 的电话:

dim o as New XOJOCSDLL.InterfaceImplementation
Call o.PrintHi("Hello")

当执行文件运行时它应该显示消息框并带有Hello消息

4

0 回答 0