Solidworks 宏实现不适用于 Python

Solidworks macro implementation not working with Python

我有一个宏(见下文),它将使用 .txt 文件中的 xyz 点加载到 Solidworks 中。需要明确的是,这给出了所需的输出。

Dim swApp As Object
Dim Part As Object

Sub main()

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
Part.InsertCurveFile("Generic Filepath\Points.txt")

End Sub

我正在尝试使用此实现从 Python 获取到 运行 的相同宏:

import win32com.client

sldw = win32com.client.Dispatch('SldWorks.Application')
sldw.NewDocument("C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\lang\english\Tutorial\part.prdot", 0, 0, 0)  

Part = sldw.ActiveDoc
Part.InsertCurveFile("Generic Filepath\Points.txt")  

#Cleanup the com reference. 
del sldw

我知道我可以 运行 来自 Python 的 Solidworks 宏,因为我有一些测试可以工作。当我 运行 时,宏 Python 不会输出任何类型的错误消息,也不会在 Solidworks 中生成任何内容。

运行 Python 编辑器中一行一行的代码 Part.InsertCurveFile("Generic Filepath\Points.txt") returns False.

打开 Solidworks 并打开零件文档,打开以下作品:

import win32com.client
import pythoncom
pythoncom.CoInitialize ()

sldw = win32com.client.GetObject (Class='SldWorks.Application')
Part = sldw.ActiveDoc
Part.InsertCurveFileBegin()
Part.InsertCurveFilePoint(0, 0, 0)
Part.InsertCurveFilePoint(0, 1, 1)
Part.InsertCurveFilePoint(1, 1, 1)
Part.InsertCurveFileEnd()

如何使 Python 实施工作?

\(反斜杠)看起来有问题。 将其替换为 / 或将字符串声明为原始字符串(在其前面加上和 r)r"Generic Filepath\Points.txt"