xiaoyaobest 发表于 2009-8-24 21:04:00

VB.NET引用类库开发AUTOCAD问题汇总

<p><font color="#3300ff">(这篇贴子原来在前两天发到了明经新论坛上,后来才看清楚,新论坛暂时不能发贴,所以就在这里又发一次)</font></p><p>本人做AUTOCAD二次开发也有两三年了,最初用AUTOLISP,后来用了一些VLISP的函数,再后来用VBA,现在我觉得最好还是用.NET直接开发AUTOCAD(VBA只是简化版和客制化的VB,有很多方面功能还不够强,比强表格控件等),现在开始用VB.NET 2005引用AUTOCAD2004类库开发AUTOCAD已几个月了,写了几个EXE出来,但其间也遇到很多问题,在此与各位一起探讨一下。</p><p><font color="#ff0000" size="3">1.焦点切换问题:</font></p><p><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一般我用 AppActivate 函数来控制,但感觉有时候好像控制得不是太好,从.NET切换到atuocad时,CAD的窗口不能至顶(同时配合ME.HIDE,大部分时候可以),大家有其它方法吗?</font></p><p><font color="#ff0000" size="3">2.交互问题:</font></p><p><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 我的.NET程式在运行时,如何在CAD的命令栏中的输入?也就是说,比如,我的.net程序还在运行,窗口已经LOAD了,还没有点FORM的按纽操作,此时我还能在CAD的命令栏中输入并执行任何指令,但VBA开发时不会有这种情况,在VBA中好比你的窗口是一个模态窗口,你的程序窗口打开了,在AUTOCAD命令栏中就不能输入任何指令。但这一点在.net中真的好难控制,最麻烦的是我的EXE还没关闭,用户都可以把AUTOCAD关掉(不要告诉我写一个定时器来判断AUTOCAD是否在运行)。不知道有没有好的办法解决这个问题</font></p><p><font color="#ff0000" size="3">3.选择集</font></p><p><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这也是令我很郁闷的问题,使用过滤器做选择集,同一个程序,90%的时候都OK,但有时偶尔会出错,意思好像是说 autoca自动化错误(这个错误以前在vlisp的getboundingbox出现过,问题是字体不匹配)。这两天没这样出错,哪天又出错了,我把出错代码传上来。</font></p><p><font size="3">&nbsp;&nbsp;&nbsp;&nbsp; 暂时总结这么多吧,希望也用VB.NET做CAD开发的朋友们共同讨论下,共同进步,谢谢!</font></p>

雪山飞狐_lzh 发表于 2009-8-24 21:14:00

VB.Net调用AX库开发应该直接发到VB/VBA版,这里是NetApi开发版,两个不同的东西,这个问题说过很多遍了<br/><br/>使用AX开发的Bug确实很多,很多功能不能直接实现,所以还是建议改用NetApi开发<br/>

雪山飞狐_lzh 发表于 2009-8-24 21:19:00

关于你的问题<br/>1、焦点切换<br/>最好调用Api实现<br/>2、交互问题<br/>注意你的程序控制,Com开发本来就很郁闷的:)<br/>3、选择集<br/>当前选择集么?最好先删除在重建,这是一个有名的Bug<br/>

xiaoyaobest 发表于 2009-8-24 23:14:00

先多谢<strong><font face="Verdana" color="#da2549">lzh741206</font></strong>版主的回答,另外既然这篇帜子不能发在这里,有劳版本将其移到VB/VBA版块,谢谢。
页: [1]
查看完整版本: VB.NET引用类库开发AUTOCAD问题汇总