En Cpython, je peux utiliser win32com. Mais, en ironpython, je ne savais pas comment l'importer. Parce que, dans .net, on utilise toujours Visual Studio pour interopérer le COM et l'utiliser.Comment importer COM dans Ironpython?
4
A
Répondre
5
Vous devriez être en mesure de créer un objet en utilisant IDispatch:
from System import Type, Activator
Activator.CreateInstance(Type.GetTypeFromProgID(com_type_name))
Cela équivaut à win32com.client.Dispatch (com_type_name).
S'il y a un type lib vous devriez être en mesure de le faire:
import clr
import System
typelib = clr.LoadTypeLibrary(System.Guid("00020905-0000-0000-C000-000000000046"))
word = typelib.Word.Application()
Je ne sais pas ce qui est équivalent à. Je ne suis pas très expert en la matière, mais j'ai pris ceux de IronPython's cominterop_util qui sont utilisés dans les tests. Il y a plus de choses dans le répertoire IronPython \ Tests \ interop \ com qui pourraient être utiles.