eproo 发表于 2022-7-6 17:06:29

C#和AutoCAD问题

你好
我的程序有一个小问题。我需要创建从windows窗体生成AutoCAD绘图的程序。我已经完成了所有工作,但有一个小问题:每次程序运行时,我只能向autocad发送一次命令,如果我尝试发送两个命令,它就会崩溃,并给我错误消息,调用被调用方拒绝。我发现这是因为发送命令需要转到autocad的时间。我也找到了解决方案,我做了这个解决方案,它确实有效,但现在还有另一个问题,实际上仍然是一样的。消息过滤器。寄存器();工作并停止挤压和错误消息没有显示,但什么都没有出现,我的意思是下一个发送命令不工作,它只是停止工作,我的意思是命令不发送。以下是我的代码:
 
公共void RenameLayoutu()
{
消息过滤器。寄存器();
阿卡多克。SendCommand(“_layout r Layout1”);
发送键。发送(“{ENTER}”);
阿卡多克。SendCommand(“mylayout”);
发送键。发送(“{ENTER}”);
消息过滤器。撤销();
}
 
它将重命名文档中的一个布局。第一个命令工作,然后进入键发送,然后什么都没有,没有挤压,程序仍在运行,我可以在autocad中手动绘制一切工作,除了第二个命令的发送。
感谢任何愿意帮助的人。
致以最诚挚的问候。

borgunit 发表于 2022-7-6 18:44:49

您是否尝试过AutoCAD对象模型中的对象,而不是SendCommand。由于AutoCAD不会向您使用的编程语言提供任何实际反馈,因此SendCommand会出现计时问题。
页: [1]
查看完整版本: C#和AutoCAD问题