乐筑天下

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

[讨论]如何保存及读取dwg文件啊

[复制链接]

22

主题

99

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
187
发表于 2010-11-16 10:49:00 | 显示全部楼层 |阅读模式
我使用Database的Save()方法来保存Dwg文件信息,但是报“eFileInternalEr”的错误。
于是我就使用Document的CloseAndSave()方法来保存,又报“图形忙”的错误。
于是我就让程序休眠3s,还是图形忙的错误。
有没有办法保存这个dwg文件以及数据啊,求高手指点。
保存后打开,怎么找到dwg文件中数据库的信息。
谢谢!!!
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-11-16 11:25:00 | 显示全部楼层
db.SaveAs(doc.Name, null);
Database的Save()方法只是个预留方法,没有实现的
Document的CloseAndSave()方法应该对应的不是当前文档
回复

使用道具 举报

22

主题

99

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
187
发表于 2010-11-16 14:13:00 | 显示全部楼层
解决了,谢谢版主。
回复

使用道具 举报

0

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
1
发表于 2011-3-22 18:23:00 | 显示全部楼层

请问,怎么解决的。。。我也碰到了这个问题。
回复

使用道具 举报

22

主题

99

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
187
发表于 2011-3-23 17:34:00 | 显示全部楼层

引发不能保存的问题比较多,比如实体打开未关闭、使用了非法的标注样式等等。
下面有段测试代码,希望对你有帮助。
  1. ///
  2.     /// 保存dwg文件
  3.     ///
  4.     /// 要保存的实体
  5.     public void AddEntity(Entity entity)
  6.     {
  7.       Document doc = AcadApp.DocumentManager.MdiActiveDocument;
  8.       Database db = doc.Database;
  9.       using (Transaction trans = db.TransactionManager.StartTransaction()) {
  10.         BlockTable bt = (trans.GetObject(db.BlockTableId, OpenMode.ForWrite)) as BlockTable;
  11.         BlockTableRecord btr = (trans.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite)) as BlockTableRecord;
  12.       
  13.         ObjectId objectId = btr.AppendEntity(entity);
  14.         trans.AddNewlyCreatedDBObject(entity, true);
  15.         trans.Commit();
  16.         trans.Dispose();
  17.       }
  18.       db.SaveAs(@"../../../../test.DWG", DwgVersion.Current);
  19.     }
  20. [CommandMethod("AddArc")]
  21.     public void AddArc()
  22.     {
  23.       Arc arc = new Arc(new Point3d(100, 200, 300), 50, 60, 30);
  24.       AddEntity(arc);
  25.     }

回复

使用道具 举报

0

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
1
发表于 2011-4-8 23:54:00 | 显示全部楼层
想问问楼主一个问题:希望楼主给些建议,谢谢
问题:在Autocad 2008菜单里添加一个选项(类似一个按钮),点击后,弹出一个Panel,在Panel里输入 用户名和密码,连接某站点的Webservice 确认用户名和密码是否正确,并返回结果。
希望楼主给些建议,用。Net开发插件,还是头一次,谢谢
回复

使用道具 举报

6

主题

30

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
54
发表于 2011-4-17 21:50:00 | 显示全部楼层
很好的学习了一下,谢谢了
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-15 12:56 , Processed in 0.368807 second(s), 66 queries .

© 2020-2025 乐筑天下

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