AutoCAD 使用 ObjectARX 检查活动等待命令完成,然后使用 VB 或 C# 运行下一个命令

问题描述

我在使用 VB.NET 或 C# 编程时遇到了问题。例如,我有一个包含在 AutoCAD 中绘制 1000 条线的循环。换句话说,新命令在上一个命令完成后执行。等待新绘图完成上一个绘图而不使用 sleep 我的目标是如何检查命令的结尾。

解决方法

我会使用:

object obj = Application.GetSystemVariable("CMDNAMES");

并检查 obj 是否包含评估命令的名称

,

您有一个 RPC_E_CALL_REJECTED,因为 AutoCAD 正忙,无法处理您的呼叫。您必须实现 IMessageFilter 接口才能处理拒绝您的呼叫。

此处说明:https://through-the-interface.typepad.com/through_the_interface/2010/02/handling-com-calls-rejected-by-autocad-from-an-external-net-application.html