gsteven 发表于 2009-12-10 23:18:00

应用程序如何与object arx.net配合

<p>我要在vs2008里新建窗体应用程序,可以引用cad的com库来启动和操作cad,那么如何把object arx.net的技术加入到我的应用程序中呢。是不是只能由com向cad发送命令(用object arx.net开发的命令),由这个命令来作为引用com的应用程序和object arx.net开发的dll的唯一的连接点?</p><p>如果是这样的话,觉得object arx.net开发的东西只能在打开cad后,在cad里面使用,范围大受限制,无法和其他应用程序产生接口。</p><p>能否这样,把object arx.net开发的动态链接库dll作为应用程序的一个引用来使用?如果可以这样的话,那还是很好的。</p><p></p>

雪山飞狐_lzh 发表于 2009-12-11 09:23:00

<p>把你的类库暴露给Com调用</p><p>看看这里的例子</p><p><a href="http://bbs.mjtd.com/forum.php?mod=viewthread&tid=75796">http://bbs.mjtd.com/forum.php?mod=viewthread&tid=75796</a></p><p>8楼</p><p>不过,.Net做Com真的好复杂</p>

gsteven 发表于 2009-12-12 13:25:00

<p>看了帖子了。</p><p>是先做一个dll,然后向注册表里面写东西,然后新建窗口程序,引用那个dll,调用那个dll的方法。</p><p>但是有个小问题:往 注册表里写的东西没有指明那个dll的路径,难道说新建的窗口程序是将dll复制到本地引用的吗?</p>

gsteven 发表于 2009-12-12 14:45:00

调试了一下,出现问题。我用的是CAD2009 附件中LoadableComponent是dll, DrivingAutoCAD是窗口程序,谁能帮我看看啊,谢谢了。动态链接库我生成之后,并且按照他说的方法添加了注册表项。然后新建窗口程序,但是在运行的时候出现问题了执行这一句是报错 INumberAddition app = (INumberAddition)acApp.GetInterfaceObject( "LoadableComponent.Commands" ); 报错信息:加载应用程序时出现问题 catch (Exception ex) { MessageBox.Show( this, "Problem executing component: " + ex.Message ); }

雪山飞狐_lzh 发表于 2009-12-12 17:40:00

本帖最后由 作者 于 2009-12-12 19:37:49 编辑 <br /><br /> <p>注册表项是用RegAsm.Exe生成的</p><p></p>
页: [1]
查看完整版本: 应用程序如何与object arx.net配合