我正在开发一个API,它提供了一些ActiveX COM对象,我在下面阅读了这些警告:
“您必须使用工厂”创建“方法在此部分中创建COM对象。一旦通过工厂方法创建了COM对象,COM对象就会绑定到相应的TWS COM对象(一个实例) COM对象)。不要尝试将COM对象传递给TWS COM对象的另一个实例。“
这些词来自此ActiveX API上的VB示例的一部分。现在我正在使用c#,我该怎么做才能遵循这条规则?
答案 0 :(得分:1)
不知道这些数据类型是什么或者您为这些类型命名的内容,让我们使用ActiveXType
中定义的名为ApiComObject
的数据类型。
class TwsCom {
private ApiComObject apiComObject;
public TwsCom() {
apiComObject = new ApiComObject(); // create an instance, if required
}
// you might want to keep this variable type private to avoid breaking
// the rules
private ActiveXType NewActiveXType() {
return apiComObject.Create();
}
public object SomeMethod() {
ActiveXType activeX = NewActiveXType();
return activeX.SomeMethod();
}
}
这段代码非常模糊,但这是我能做的最好的事情,除非你想提供更多细节。