【发布时间】:2011-03-31 21:09:09
【问题描述】:
在 Cpython 中,我可以使用 win32com。
但是,在 Ironpython 中,我不知道如何导入它。
因为在 .net 中,人们总是使用 Visual Studio 来互操作 COM 并使用它。
【问题讨论】:
标签: .net com ironpython
在 Cpython 中,我可以使用 win32com。
但是,在 Ironpython 中,我不知道如何导入它。
因为在 .net 中,人们总是使用 Visual Studio 来互操作 COM 并使用它。
【问题讨论】:
标签: .net com ironpython
您应该能够使用以下方法创建 IDispatch 对象:
from System import Type, Activator
Activator.CreateInstance(Type.GetTypeFromProgID(com_type_name))
这相当于 win32com.client.Dispatch(com_type_name)。
如果有类型库,你应该可以这样做:
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 目录中还有更多可能有用的东西。
【讨论】: