明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1870|回复: 3

小小声问一句..有人能上ADN么?

[复制链接]
发表于 2005-5-31 18:07:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2005-6-1 11:48:45 编辑

今天终于鼓起勇气去看appContextNew/OpenDocument在用文件发布命令时候会不能在新文件内继续操作一定要旧文件重新激活才承认命令结束的问题..



ARX官方论坛上有某人宣称问题已经解决了..但是答案在ADN number 44759..


又有人说用传说中undocumented的acedPostCommand可以解决, 但是偶试了半天也没试出来怎么用..


ARX官方例子用的是无模式对话框, 就绕过了在文件中发布application context命令时document context不能结束命令的问题..


用代码重新激活发布命令的文件再激活新文件没有用..一定要手动去CAD里面激活旧文件..


晓东..太慢了..偶一上去就死机..


如果有人能上ADN把这个44759找出来, 就造福四方了..


(...被黑泽明郁闷了....
..................电影构图怎么做到可以这么完美呢..
.........以后看什么电影都没美感了........
....恍..惚..)
发表于 2005-6-2 21:46:00 | 显示全部楼层
我们公司就是autodesk的ADN,但是,我一直没好意思向老板要帐号和密码,因为公司现在用的都是VBA,基本上没有什么问题要上去问的。改天,我找个理由,问到了,偷偷的告诉你哦~~~


还像问一下,ADN的网页链接是?:)
发表于 2005-6-2 22:02:00 | 显示全部楼层
跟朋友要的:
Creating a new document and activating it from a custom command
Issue
How can I create a new document and activate it from a custom command?
Solution
There are two ways to do this: Method #1
Register your command with ACRX_CMD_SESSION flag and use the appContextNewDocument API to create the new document. The drawback of this approach is that your command will be executed in the application context, therefore, you will need to do explicit document locking if you want to interact with any documents. Also, you cannot use acedCommand/acedCmd/acedInvoke APIs from the application context. Method #2
Register your command with ACRX_CMD_MODAL flag and use the executeInApplicationContext API within your command handler to switch the application context. The drawback of this approach is that you will need to create a hidden window that coordinates the activation of the newly created document once the 'creator' command finishes. Both methods are demonstrated in the attached AutoCAD 2002 sample.
 楼主| 发表于 2005-6-3 11:14:00 | 显示全部楼层
多谢mccad。。!


但是。。偶还是不能不发一个牢骚。。ARX原开发的家伙们太太太。。。


这个问题是ARX自定义命令如果要从命令行打进去执行,就一定是document context,所以在这样的命令里面如果有application context函数,就会造成命令本身被悬置。偶抓破头想了半天,认为最可能的解决方法是ARX有个不公开或者偶不够仔细没看到的从document context转到application context以后可以用来直接结束document context命令的函数,结果。。


Autodesk给的一个方案是把自定义命令直接定义成application context。。(和文件界面的交换就麻烦了。。)


另外一个方案更麻烦,制造一个隐藏的专门协调文件的窗口(就像ARX给的docman例子一样,用对话框不用命令行)。。


看得偶这叫一个吐血啊。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 07:18 , Processed in 0.168154 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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