明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2531|回复: 3

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

[复制链接]
发表于 2009-8-24 21:04:00 | 显示全部楼层 |阅读模式

(这篇贴子原来在前两天发到了明经新论坛上,后来才看清楚,新论坛暂时不能发贴,所以就在这里又发一次)

本人做AutoCAD二次开发也有两三年了,最初用AUTOLISP,后来用了一些VLISP的函数,再后来用VBA,现在我觉得最好还是用.NET直接开发AUTOCAD(VBA只是简化版和客制化的VB,有很多方面功能还不够强,比强表格控件等),现在开始用VB.NET 2005引用AUTOCAD2004类库开发AUTOCAD已几个月了,写了几个EXE出来,但其间也遇到很多问题,在此与各位一起探讨一下。

1.焦点切换问题:

        一般我用 AppActivate 函数来控制,但感觉有时候好像控制得不是太好,从.NET切换到atuocad时,CAD的窗口不能至顶(同时配合ME.HIDE,大部分时候可以),大家有其它方法吗?

2.交互问题:

        我的.NET程式在运行时,如何在CAD的命令栏中的输入?也就是说,比如,我的.net程序还在运行,窗口已经LOAD了,还没有点FORM的按纽操作,此时我还能在CAD的命令栏中输入并执行任何指令,但VBA开发时不会有这种情况,在VBA中好比你的窗口是一个模态窗口,你的程序窗口打开了,在AUTOCAD命令栏中就不能输入任何指令。但这一点在.net中真的好难控制,最麻烦的是我的EXE还没关闭,用户都可以把AUTOCAD关掉(不要告诉我写一个定时器来判断AUTOCAD是否在运行)。不知道有没有好的办法解决这个问题

3.选择集

      这也是令我很郁闷的问题,使用过滤器做选择集,同一个程序,90%的时候都OK,但有时偶尔会出错,意思好像是说 autoca自动化错误(这个错误以前在vlisp的getboundingbox出现过,问题是字体不匹配)。这两天没这样出错,哪天又出错了,我把出错代码传上来。

     暂时总结这么多吧,希望也用VB.NET做CAD开发的朋友们共同讨论下,共同进步,谢谢!

发表于 2009-8-24 21:14:00 | 显示全部楼层
VB.Net调用AX库开发应该直接发到VB/VBA版,这里是NetApi开发版,两个不同的东西,这个问题说过很多遍了

使用AX开发的Bug确实很多,很多功能不能直接实现,所以还是建议改用NetApi开发
发表于 2009-8-24 21:19:00 | 显示全部楼层
关于你的问题
1、焦点切换
最好调用Api实现
2、交互问题
注意你的程序控制,Com开发本来就很郁闷的:)
3、选择集
当前选择集么?最好先删除在重建,这是一个有名的Bug
 楼主| 发表于 2009-8-24 23:14:00 | 显示全部楼层
先多谢lzh741206版主的回答,另外既然这篇帜子不能发在这里,有劳版本将其移到VB/VBA版块,谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 00:33 , Processed in 0.156362 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表