• 首页
  • 粮食
  • 蔬菜
  • 果品
  • 水产
  • 酒水
  • 饮料
  • 茶叶
  • 畜禽
  • 食用油
  • 资讯
logo
  • 首页>
  • 资讯 >
  • 正文

如何通过API为SOLIDWORKS自动化开发插件

2023-04-09 16:52:24 来源:哔哩哔哩

SOLIDWORKS 插件是使用 SOLIDWORKS API 实现的 SOLIDWORKS进程内应用程序,它具有高度客制化、最佳的性能和用户体验等特点。插件可以在启动时加载并集成到应用程序中,并拥有扩展 SOLIDWORKS 用户界面和功能的能力。

SOLIDWORKS 插件是一个 COM 对象,可以使用任何兼容 COM 的语言(如 C++、C#、VB.NET、VB6)进行开发。

为了开发外接程序,需要:


(资料图片)

创建实现 ISwAddIn 接口的公共 COM 可见类。(https://help.solidworks.com/2023/english/api/swpublishedapi/solidworks.interop.swpublished~solidworks.interop.swpublished.iswaddin.html)

使用 Regasm(https://learn.microsoft.com/zh-cn/dotnet/framework/tools/regasm-exe-assembly-registration-tool)(适用于基于 .NET 的插件(C# 或 VB.NET))和 RegSvr32()(适用于基于 C++ 和 VB6 的插件)将 dll 注册为 COM 服务。注册 COM 对象时需要添加 dll 的代码库。

将有关插件的信息添加到 SOLIDWORKS 注册表,以便在加载时可以识别它。插件信息需要添加到SOFTWARE\SolidWorks\Addins\和Software\SolidWorks\AddInsStartup\注册表目录下。第一个键定义外接程序的名称和说明,并且是必需的。第二个键是可选的,允许指定在 SOLIDWORKS 启动时是否需要在启动时加载插件。

实现插件

ISwAddIn 接口提供了两个函数来实现:

ConnectToSW:当插件随 SOLIDWORKS 一起加载时(如果指定了启动时加载选项)或从 SOLIDWORKS 中的 工具->插件 菜单启用时调用。函数传递 2 个参数:指向主 ISldWorks接口的指针和插件的ID。

存储指向 ISldWorks 的指针,并在整个代码中使用它来访问所有接口。请勿使用 CreateObject 或 Activator::CreateInstance 方法来检索指向应用程序的指针,因为此方法不能保证连接到 SOLIDWORKS 的当前实例,并且会启动新的后台会话。

第二个参数是插件的ID,可用于在方法中添加UI组件,例如 ISldWorks::GetCommandManager、ISldWorks::AddFileSaveAsItem2、ISldWorks::ShowBubbleTooltipAt2。

使用此方法启动资源并创建用户界面(命令管理器、任务窗格等)。

DisconnectFromSW:在关闭 SOLIDWORKS 时卸载插件时或在 SOLIDWORKS 中的 工具->插件 菜单中禁用插件时调用。使用此方法清除资源并删除所有用户界面元素(如命令管理器或任务窗格)。

导入它是为了卸载用户界面页面,因为用户可以通过在插件菜单中禁用加载项(不仅通过关闭 SOLIDWORKS 应用程序)来卸载插件,并且保持用户界面页面加载可能会引入崩溃或不稳定的风险,因为页面与插件本身断开连接。

开发环境

SOLIDWORKS 插件最受欢迎的开发环境是 Microsoft Visual Studio。Visual Studio有不同的版本:Professional,Enterprise和Community。您可能更容易获得免费版本的Community版本。查看 EULA 了解更多信息。可替代的自由环境是SharpDevelop。

例子

下面的链接提供了使用不同编程语言创建简单的“Hello World”插件的详细指南。

C#(https://www.codestack.net/solidworks-api/getting-started/add-ins/csharp/)

VB.NET(https://www.codestack.net/solidworks-api/getting-started/add-ins/vbnet/)

插件在启动时加载,并在加载时显示“Hello World”消息框。

插件可从“插件...”对话框中获得。

开发框架

使用免费和开源的xCAD.NET框架(https://xcad.xarial.com/),可以在.NET(C#或VB.NET)中显著简化 SOLIDWORKS 加载项的开发。框架封装了 COM 类和 API 对象模型的复杂性,以适应 .NET 环境并从语言的功能(如强类型)中受益。

文章翻译自https://www.codestack.net/

仅供学习使用。

关键词:

    为您推荐

  • 如何通过API为SOLIDWORKS自动化开发插件

    资讯2023-04-09
  • 世界热门:济宁市港航一季度集装箱吞吐量突破3万标箱

    资讯2023-04-09
  • 更新国际治疗最新进展 新版乳腺癌诊疗指南发布→-当前动态

    资讯2023-04-09
  • 焦点报道:快船赢球但最后一场依然不敢放水,勇士死里逃生,湖人要打附加赛

    资讯2023-04-09
  • 三场比赛得分王:江苏双星进步太大!吴梦洁周页彤都有进女排实力

    资讯2023-04-09
  • 紫罗兰花怎么养家庭养法_紫罗兰花的养殖方法

    资讯2023-04-09
  • 泰坦显卡最贵多少钱_四路泰坦-世界快讯

    资讯2023-04-09
  • 极目帮办丨市民反映家中自来水有杂质,记者协调专业人员现场检测打消疑虑

    资讯2023-04-09
  • 事发紧急!日本,已经先动手了!

    资讯2023-04-08
  • 天天短讯!我的大熊猫表情包分你一点丨国际珍稀动物保护日

    资讯2023-04-08
  • “税收体检报告”助企精准防范税收风险

    资讯2023-04-08
  • 海信电视怎么手机投屏(海信电视微助手的使用方法)

    资讯2023-04-08
  • 今日聚焦!操场上好词好句摘抄

    资讯2023-04-08
  • 今日3D图片怎么看_3d图片用什么看啊

    资讯2023-04-08
  • 重点聚焦!《春闺梦里人》宁钰轩季曼哪一集成亲 季曼身世什么时候曝光

    资讯2023-04-08
  • 西安16所学校命名为普通高中特色实验学校

    资讯2023-04-08
  • 推心置腹什么意思_推心置腹的释义-环球速讯

    资讯2023-04-08
  • 全球财经连线|穆迪分析首席经济学家Mark Zandi:银行业风波或不会演变为全球性金融危机-世界新消息

    资讯2023-04-08
  • 关胜简介2019_关胜简介

    资讯2023-04-07
  • 亚足联:中国男足以第二档身份参加2023亚洲杯分组抽签-环球观焦点

    资讯2023-04-07

果品

  • 全球报道:腥臭刺鼻!海关截获生活垃圾及医疗废弃物2.79吨
  • Dance in the moment_环球观焦点
  • 工业母机概念发力走高,巨轮智能涨停,秦川机床等拉升
  • 天天热门:好的领域模型应该是什么样子?
  • 唐源电气董秘回复:公司一直积极地在推动诉讼进程,迫切地希望能够早日结案

蔬菜

  • 说好“一梯一户”却成了“两梯两户”,买方能否解除合同?
  • 更高水平开放合作助力中国东盟经贸发展迎新机遇
  • 9被告人犯侵犯著作权罪被判刑罚
  • 玉渊谭天丨中美再通话,“建设性”很重要
  • 环球时报社评:中美经贸需要建设性对话
  • 俄媒:莫斯科扩大新冠感染新疗法试点范围
  • 冰雪之约 中国之邀 | 追赶的勇气
  • 中国第20批赴黎维和建筑工兵分队完成“VA-2”道路排水系统修缮任务
  • 中国常驻联合国代表团举办恢复联合国合法席位50周年图片展
  • 美专家认为三大原因导致美国供应链危机

Copyright   2015-2022 华南食品网 版权所有  备案号:粤ICP备18025786号-52   联系邮箱: 954 29 18 82 @qq.com