如何将COM导入Ironpython?

时间:2010-08-19 00:45:37

标签: .net com ironpython

在Cpython中,我可以使用win32com。

但是,在ironpython中,我不知道如何导入它。

因为,在.net中,总是使用Visual Studio来交换COM并使用它。

1 个答案:

答案 0 :(得分:5)

您应该能够使用以下方法创建IDispatch对象:

from System import Type, Activator
Activator.CreateInstance(Type.GetTypeFromProgID(com_type_name))

这相当于win32com.client.Dispatch(com_type_name)。

如果有一个类型的lib你应该能够做到:

import clr
import System
typelib = clr.LoadTypeLibrary(System.Guid("00020905-0000-0000-C000-000000000046"))
word = typelib.Word.Application()

我不知道那相当于什么。我不是这方面的专家,但我从测试中使用的IronPython's cominterop_util中取出了那些。在IronPython \ Tests \ interop \ com目录中有更多内容可能有用。