泉州玻璃栈道在哪:同样把COM对象用.NET包装器起来. 为何在IronPython中可以创建其实例. 在C#中却不行?

来源:百度文库 编辑:神马品牌网 时间:2024/04/30 05:19:05
当然不是所有的, 但确实碰到了这种情况. IronPython 的对象创建方式和 C# 不同吗. 那么如何才能让C#也能创建呢?

我包装的是 IBM 的个人通讯系统(一个仿真终端 PCOMM)里的COM 对象.

COMY对象: AutSess.tlb
.NET包装: AutSessTypeLibaray.dll

在C#里创建时,用的如下语句:
AutSessClass sess = new AutSessClass();
sess.SetConnectionByName("A")

这两句里,第一句没问题.问题在第二句.总是引发一个异常: 说是无法将AutSessClass对象强制转换为 IAutSess 接口....无法 QueryInterface...
这里难道需要自动转为接口吗? 可是,即便我用了各种方式:
IAutSess sess = new AutSessClass();
IAutSess sess = (IAutSess)(new AutSessClass());
...

也都是同样的异常...我实在费解..请高人相助!!!

AutSess sess = new AutSess();
sess.SetConnectionByName("A");