乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 95|回复: 6

[编程交流] Can';t保存dwg“文档

[复制链接]

33

主题

107

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
175
发表于 2022-7-6 09:12:39 | 显示全部楼层 |阅读模式
您好:我有一个应用程序,我正在创建的w/autocad。net api,运行它时,我使用以下脚本打开图形:
 
  1. [size=2]Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.Open(myFile.ToString(), [/size][size=2][color=#0000ff]False[/color][/size][size=2])
  2. Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument(DocumentLockMode.Write, [/size][size=2][color=#0000ff]Nothing[/color][/size][size=2], [/size][size=2][color=#0000ff]Nothing[/color][/size][size=2], [/size][size=2][color=#0000ff]True[/color][/size][size=2])
  3. [/size][size=2][color=#008000]'if the drawing is saved so that paperspace was showing, this code makes sure that model space is the default setting for the user to see.
  4. [/color][/size][size=2]Autodesk.AutoCAD.ApplicationServices.Application.SetSystemVariable([/size][size=2][color=#800000]"TileMode"[/color][/size][size=2], 1)
  5. [/size]

 
但是,如果我尝试执行文件->另存为,则会显示以下消息:
 
文档“Document name.dwg”正在执行命令。按enter键取消或重试。
 
我尝试按enter键和cancel键,但仍无法保存绘图。
 
我做错了什么?
 
谢谢
监考人员
回复

使用道具 举报

LCE

1

主题

29

帖子

28

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 09:25:59 | 显示全部楼层
监考人员
这是完整的代码吗?如果这是唯一的代码,那么保存应该没有问题。
回复

使用道具 举报

2

主题

439

帖子

536

银币

限制会员

铜币
-14
发表于 2022-7-6 09:40:34 | 显示全部楼层
保存前检查CMDACTIVE系统变量。I等于0无活动命令,否则:
1-普通命令激活
2-普通命令和透明命令处于活动状态
4-脚本处于活动状态
8-对话框处于活动状态
16-DDE激活
32-AutoLISP处于活动状态(仅对ObjectARX定义的命令可见)
64-ObjectARX命令处于活动状态
回复

使用道具 举报

0

主题

132

帖子

198

银币

限制会员

铜币
-21
发表于 2022-7-6 09:52:40 | 显示全部楼层
我们以前也遇到过这种情况,但不是在代码中。这可能会有所帮助。
 
http://usa.autodesk.com/adsk/servlet/ps/item?siteID=123112&id=2884967&linkID=9240617
回复

使用道具 举报

33

主题

107

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
175
发表于 2022-7-6 10:01:23 | 显示全部楼层
您好:思考并查看大家所说的内容,我决定在代码中找到出现问题的确切位置。。。我在我的CreateBlock子程序中找到了它。代码有许多启动事务。。处理事务。。。所以我决定用using语句重做并清理它。。。
 
但是现在,当我运行它时。。。它经历了一路轰炸;然而,我不认为这一块正在被创建。。。因为在我的程序继续运行后不久,我收到另一条错误消息,表明该对象没有创建。
 
你能看一下我上面的代码,告诉我我可能遗漏了什么吗?
 
 
再次感谢你的所有想法,并帮助我解决这个问题。
监考人员
 
 
必须连接。。因为它太长了:
使用语句创建block\u。txt文件
回复

使用道具 举报

33

主题

107

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
175
发表于 2022-7-6 10:02:45 | 显示全部楼层
你好:我只是想让你知道我终于成功了。记得我告诉过你,问题最终出现在创建块过程中的某个地方。。。因此,为一个事务更改了几个启动和提交事务:
 
将docLock用作DocumentLock=ed.Document。LockDocument()
使用trans作为事务=ed.Document。TransactionManager。StartTransaction()
之后,我的代码很好地完成了这个过程。。。但是在我的AddLayer程序中出错了。。。只是多米诺骨牌效应。我收到一个错误,说明文档未锁定。。。因此,也可以为Using语句更改那些start和commit事务。。。。
之后,一切都安排妥当了。我认为这一切都源于糟糕的代码,不知道从哪里开始和处理,然后重新启动另一个事务。。。这就是为什么我喜欢使用状态。。。打扫得很干净,什么都照顾好了。
无论如何,我只是想让你们知道,再次感谢你们的时间和投入。
监考人员
回复

使用道具 举报

0

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 10:22:05 | 显示全部楼层
尝试检查可能打开的其他dwg文件,并查看该图形中是否有激活的命令。我刚刚发现我有同样的问题,其中一个最小化的图形有一个选择等待我提供复制和粘贴命令。值得一试。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-7 05:08 , Processed in 0.375280 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表