我正在努力Catia Automation
。
这种情况是,每当特定许可证不可用时,都会弹出一条消息,no licences are available
并显示使用该许可证的用户的部分列表。
有什么方法可以通过代码读取消息并将其用作字符串?
我正在努力Catia Automation
。
这种情况是,每当特定许可证不可用时,都会弹出一条消息,no licences are available
并显示使用该许可证的用户的部分列表。
有什么方法可以通过代码读取消息并将其用作字符串?
来自官方文档“CAA V5自动化编码规则”:
作为默认行为,每当出现错误时,解释器都会停止并显示错误消息框。当您想对错误采取纠正措施时,必须使用“On Error Resume Next”禁用自动错误处理机制。
这意味着您应该禁用默认错误处理,而是使用错误对象编写自定义逻辑Err
。
Dim CATIA As Object
On Error Resume Next ' Disable automatic error handling
Set CATIA=GetObject(,"CATIA.Application")
iErr = Err.Number ' For BasicScript parser (Unix)
If (iErr <> 0) Then ' Manually handle all errors
On Error Goto 0 ' Invalidates the Resume Next and clears the error
set CATIA=CreateObject("CATIA.Application")
End If
On Error Goto 0 ' Invalidates the Resume Next and clears the error
Err 是包含错误信息的错误对象。
您可以使用 Err.Message、Err.description、Err.number 来获取信息
Sub yoursub
On Error goto error ' goto error handling block
Set CATIA=GetObject(,"CATIA.Application")
// your code
error:
Debug.print Err.Description ' print description to immediate window
Debug.print Err.Source ' print source of error to immediate window
Debug.print Err.Number ' print error number to immediate window
End Sub