明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1036|回复: 7

如何獲取當前佈局是否已經在圖紙集中存在

[复制链接]
发表于 2025-4-26 23:47:33 | 显示全部楼层 |阅读模式

找到這樣的代碼,但不知添加對哪個dll的引用:AcSmSheetSetMgr;
找的資料大多是VB代碼或VBA相關的,好像沒找到C#的代碼。

  1. AcSmSheetSetMgr manager = new AcSmSheetSetMgr();

  2. AcSmDatabase sheetDb =
  3.          manager.FindOpenDatabase(@"D:\\Temp\\MySheetset.dst");
  4. sheetDb.LockDb(sheetDb);

  5. // New sheet location
  6. AcSmResources resources
  7.              = sheetDb.GetSheetSet().GetResources();
  8. AcSmFileReference fileRef = new AcSmFileReference();
  9. fileRef.InitNew(resources);
  10. fileRef.SetFileName(@"D:\\Temp\\SampleDrawings");
  11. sheetDb.GetSheetSet().SetNewSheetLocation(fileRef);

  12. // Add New location
  13. AcSmFileReference fileRef1 = new AcSmFileReference();
  14. fileRef1.InitNew(sheetDb);
  15. fileRef1.SetFileName(@"D:\\Temp\\SampleDrawings");
  16. resources.Add(fileRef1);

  17. sheetDb.UnlockDb(sheetDb);

回复

使用道具 举报

发表于 2025-4-27 05:16:21 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-5-1 13:41:22 | 显示全部楼层
https://blog.jtbworld.com/2006/0 ... -code-snippets.html

發現沒有獲取當前活動圖紙集的api,當前佈局是否已經在圖紙集中存在的函數已寫完成了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-5-1 13:53:42 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2025-5-1 14:22:07 | 显示全部楼层
dst是纯文本吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-5-1 14:54:19 | 显示全部楼层

txt打開是亂碼,不是純文本格式
回复 支持 反对

使用道具 举报

发表于 2025-5-1 16:52:23 | 显示全部楼层
本帖最后由 你有种再说一遍 于 2025-5-1 17:07 编辑
箭头_Row 发表于 2025-5-1 14:54
txt打開是亂碼,不是純文本格式

你试试看它是不是一个压缩包?
例如像.pc3解析逻辑?

我表示对图纸集完全不懂,
如果dst没有办法解析,然后你又不知道怎么找到激活,
那不如自己完全模拟一套图纸集信息,
反正也没有多少东西吧,
例如批量打印就自己实现咯,快速切换图纸这种不就是把json记录下来...
然后顶多再做一个 json to dst

回复 支持 反对

使用道具 举报

发表于 2025-6-4 11:53:48 | 显示全部楼层
作个记号先,,学习学习。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-26 14:33 , Processed in 0.165302 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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