最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

如何通過API為SOLIDWORKS自動化開發(fā)插件

2023-04-09 17:09 作者:HongfengZhu  | 我要投稿

SOLIDWORKS 插件是使用 SOLIDWORKS API 實現(xiàn)的 SOLIDWORKS進程內(nèi)應(yīng)用程序,它具有高度客制化、最佳的性能和用戶體驗等特點。插件可以在啟動時加載并集成到應(yīng)用程序中,并擁有擴展 SOLIDWORKS 用戶界面和功能的能力。

SOLIDWORKS 插件是一個 COM 對象,可以使用任何兼容 COM 的語言(如 C++、C#、VB.NET、VB6)進行開發(fā)。

為了開發(fā)外接程序,需要:

  • 創(chuàng)建實現(xiàn) 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 服務(wù)。注冊 COM 對象時需要添加 dll 的代碼庫。

注冊表中插件 dll?的com 注冊信息
  • 將有關(guān)插件的信息添加到 SOLIDWORKS 注冊表,以便在加載時可以識別它。插件信息需要添加到SOFTWARE\SolidWorks\Addins\和Software\SolidWorks\AddInsStartup\注冊表目錄下。第一個鍵定義外接程序的名稱和說明,并且是必需的。第二個鍵是可選的,允許指定在 SOLIDWORKS 啟動時是否需要在啟動時加載插件。

SOLIDWORKS 注冊表中的加載項詳細信息
SOLIDWORKS 注冊表中的插件啟動詳細信息

實現(xiàn)插件

ISwAddIn 接口提供了兩個函數(shù)來實現(xiàn):

  • ConnectToSW:當(dāng)插件隨 SOLIDWORKS 一起加載時(如果指定了啟動時加載選項)或從 SOLIDWORKS 中的 工具->插件 菜單啟用時調(diào)用。函數(shù)傳遞 2 個參數(shù):指向主 ISldWorks接口的指針和插件的ID。

存儲指向 ISldWorks 的指針,并在整個代碼中使用它來訪問所有接口。請勿使用 CreateObject 或 Activator::CreateInstance 方法來檢索指向應(yīng)用程序的指針,因為此方法不能保證連接到 SOLIDWORKS 的當(dāng)前實例,并且會啟動新的后臺會話。

第二個參數(shù)是插件的ID,可用于在方法中添加UI組件,例如 ISldWorks::GetCommandManager、ISldWorks::AddFileSaveAsItem2、ISldWorks::ShowBubbleTooltipAt2。

使用此方法啟動資源并創(chuàng)建用戶界面(命令管理器、任務(wù)窗格等)。

  • DisconnectFromSW:在關(guān)閉 SOLIDWORKS 時卸載插件時或在 SOLIDWORKS 中的 工具->插件 菜單中禁用插件時調(diào)用。使用此方法清除資源并刪除所有用戶界面元素(如命令管理器或任務(wù)窗格)。

導(dǎo)入它是為了卸載用戶界面頁面,因為用戶可以通過在插件菜單中禁用加載項(不僅通過關(guān)閉 SOLIDWORKS 應(yīng)用程序)來卸載插件,并且保持用戶界面頁面加載可能會引入崩潰或不穩(wěn)定的風(fēng)險,因為頁面與插件本身斷開連接。

開發(fā)環(huán)境

SOLIDWORKS 插件最受歡迎的開發(fā)環(huán)境是 Microsoft Visual Studio。Visual Studio有不同的版本:Professional,Enterprise和Community。您可能更容易獲得免費版本的Community版本。查看 EULA 了解更多信息。可替代的自由環(huán)境是SharpDevelop。

例子

下面的鏈接提供了使用不同編程語言創(chuàng)建簡單的“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”消息框。

加載插件時顯示的消息框

插件可從“插件...”對話框中獲得。

插件對話框中顯示的插件

開發(fā)框架

使用免費和開源的xCAD.NET框架(https://xcad.xarial.com/),可以在.NET(C#或VB.NET)中顯著簡化 SOLIDWORKS 加載項的開發(fā)。框架封裝了 COM 類和 API 對象模型的復(fù)雜性,以適應(yīng) .NET 環(huán)境并從語言的功能(如強類型)中受益。


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

僅供學(xué)習(xí)使用。


如何通過API為SOLIDWORKS自動化開發(fā)插件的評論 (共 條)

分享到微博請遵守國家法律
金坛市| 乌兰浩特市| 边坝县| 宜兰市| 泽库县| 刚察县| 肥乡县| 扎囊县| 九龙县| 深州市| 西乌| 涟源市| 武邑县| 平原县| 石首市| 尚志市| 英德市| 陇川县| 定州市| 潮州市| 千阳县| 宜兰县| 瑞金市| 张家港市| 沛县| 曲沃县| 新安县| 德庆县| 大姚县| 彝良县| 开鲁县| 呼伦贝尔市| 黔西县| 龙州县| 东方市| 措美县| 黔西| 益阳市| 顺昌县| 昂仁县| 清涧县|