乐筑天下

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

应对对侧数据库的扩展字典

[复制链接]

7

主题

23

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
51
发表于 2014-5-5 00:09:48 | 显示全部楼层 |阅读模式
嗨,伙计们,
有没有人有任何关于在数据库之间复制块表中的扩展字典的技巧。
即从当前打开的Dwg复制到新的外部Dwg端数据库。
预先感谢

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

7

主题

23

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
51
发表于 2014-5-5 02:47:21 | 显示全部楼层
所以我找到了一个小解决方案(通过反复试验)。
HostApplicationServices,WorkingDatabase = SourceDB。
使用tr3作为Transaction = SourceDB,transaction manager . start transaction()。

“获取扩展字典”。
将块表调成块表。
blkTable = CType(tr3,GetObject(SourceDB,BlockTableId,OpenMode。ForRead)、块表)。

Dim extension dictionary As db dictionary 。
extension dictionary = CType(tr3,GetObject(blkTable,ExtensionDictionary(),OpenMode。ForRead,False)、DBDictionary)。

' '获取现有块表记录中对象的对象id 。
Dim objIdCol As New objectid collection()。

Dim DataDic As db dictionary = CType(tr3,GetObject(ExtensionDictionary,GetAt(“规则”),OpenMode。ForWrite)、DBDictionary)。

'允许我从字典中获取键名。
Dim DicKeys As IDictionary = DataDic 。

对于DicKeys中作为字符串的每个X,钥匙。
objIdCol,添加(DataDic,GetAt(X))。
下一步。

Dim id map As id mapping = New id mapping()。
newDb,WblockCloneObjects(objIdCol,。
DestDict1,ObjectId,。
idMap,。
重复记录克隆,MangleName,。
假)。

tr3,Commit()。

结束使用。

但是每个Xrecord的名称都没有出现,他们通过*A35,*A18等....我不明白这是为什么?。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2014-5-5 03:21:52 | 显示全部楼层
它们看起来像匿名组的名称。
这只是顺便一瞥,抱歉我不能再帮自动取款机了。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-5 06:46 , Processed in 0.200215 second(s), 69 queries .

© 2020-2025 乐筑天下

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