使用 win32COM 时创建新的 Python 对象

Creating new Python object when using win32COM

我正在使用 win32COM 向名为 "Robot Structural Analysis" 的软件发送命令。我能够检索在应用程序内部声明的对象,但我找不到一种方法来声明在应用程序的 API 中定义的 class 的新实例。

例如: robot = win32.gencache.EnsureDispatch("Robot.Application")

(我能做的是) l = robot.dataserver.somelist

但是,在 api 指南中,有一个名为 XData 的 class,我想创建一个 class 的新实例。大多数人通常用 Excel VBA 做的是

Dim x As New XData
x.property1 = 1
x.property2 = 2
...

但是Python不需要声明变量类型。我如何使用 Python 执行此操作?

要使用 win32com 和 Python 创建在 API 中定义的新 class 实例,可以执行以下操作:

  1. Windows 开始 -> 运行 regedit(注册表编辑器)-> HKEY_CLASSES_ROOT : 这里显示了所有COM对象的名称,如Robot.GeoContour

  2. 在 Python 代码中,class 实例应声明为: 轮廓 = win32.DispatchEx("Robot.GeoContour")