使用C#.net COM组件中的属性

时间:2017-01-12 21:40:52

标签: c# vbscript com

我正在尝试使用C#winforms DLL作为COM组件。

我的所有方法都运行正常,但属性没有 - 我收到错误

  

对象引用未设置为对象的实例。

以下界面中的所有属性和方法都在实现它们的类中标记为public。

[Guid("MY-GUID-IS-HERE")]
public interface IMyWinformsCOMComponent
{
    String clientID { get; }
    byte[] userID { get; }
    string language { get; set; }
    int productID { get; set; }
    uint version { get; }

    void thisWorksFine(string key, string value);
    uint getValue();
    void showTheForm();
}

以下是失败的vbscript示例

Dim oMyWinformsCOMComponent
Set oMyWinformsCOMComponent = CreateObject("myNameSpace.MyWinformsCOMComponent")

'Works fine
Dim foo : foo = oMyWinformsCOMComponent.getValue()

'Works fine
oMyWinformsCOMComponent.thisWorksFine "myString", "myValue"

'Doesn't work
Dim lang : lang = oMyWinformsCOMComponent.language

0 个答案:

没有答案