使用 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 实例,可以执行以下操作:
Windows 开始 -> 运行 regedit(注册表编辑器)-> HKEY_CLASSES_ROOT :
这里显示了所有COM对象的名称,如Robot.GeoContour
在 Python 代码中,class 实例应声明为:
轮廓 = win32.DispatchEx("Robot.GeoContour")
我正在使用 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 实例,可以执行以下操作:
Windows 开始 -> 运行 regedit(注册表编辑器)-> HKEY_CLASSES_ROOT : 这里显示了所有COM对象的名称,如Robot.GeoContour
在 Python 代码中,class 实例应声明为: 轮廓 = win32.DispatchEx("Robot.GeoContour")