国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

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

使用API為SOLIDWORKS自動(dòng)化創(chuàng)建C#插件

2023-04-09 17:48 作者:HongfengZhu  | 我要投稿
  • 在 Microsoft Visual Studio 中創(chuàng)建新項(xiàng)目。

  • 在 Visual C# 模板下選擇“類(lèi)庫(kù)”模板。指定項(xiàng)目的位置和名稱(chēng)。

在 Visual Studio 中創(chuàng)建新的類(lèi)庫(kù)項(xiàng)目
  • 添加對(duì) SolidWorks Interop 庫(kù)的引用:SolidWorks.Interop.sldworks.dll、SolidWorks.Interop.swconst.dll、SolidWorks.Interop.swpublish.dll?;ゲ僮鲙?kù)位于 SOLIDWORKS安裝文件夾\api\redist(面向框架 4.0 及更高版本的項(xiàng)目)和 SOLIDWORKS安裝文件夾\api\redist\CLR2(面向框架 2.0 和 3.5 的項(xiàng)目)。

對(duì)于面向 Framework 4.0 的項(xiàng)目,我建議將“嵌入互操作類(lèi)型”(https://learn.microsoft.com/zh-cn/dotnet/framework/interop/type-equivalence-and-embedded-interop-types)選項(xiàng)設(shè)置為 false。否則,由于類(lèi)型轉(zhuǎn)換問(wèn)題,在調(diào)用 SOLIDWORKS API 時(shí),應(yīng)用程序可能會(huì)出現(xiàn)不可預(yù)測(cè)的行為。

嵌入 SOLIDWORKS 互操作

在一些教程中,添加了對(duì)solidworkstools.dll庫(kù)的引用。此庫(kù)是可選的,本教程中不會(huì)使用它。

  • 添加一個(gè)公共類(lèi)(public class),并取一個(gè)對(duì)用戶(hù)友好的名稱(chēng)。這將是插件的主類(lèi)。此類(lèi)必須是公共的且 COM 可見(jiàn)。我建議使用ComVisible特性(https://learn.microsoft.com/zh-cn/dotnet/api/system.runtime.interopservices.comvisibleattribute?view=netframework-4.7.2)將類(lèi)標(biāo)記為 COM 可見(jiàn)對(duì)象,并使用 Guid特性(https://learn.microsoft.com/zh-cn/dotnet/api/system.runtime.interopservices.guidattribute?view=netframework-4.7.2)為插件類(lèi)顯式分配 COM GUID:

我建議不要在項(xiàng)目設(shè)置中選擇【使程序集 COM 可見(jiàn)】選項(xiàng),而只是如上所述將所需的類(lèi)標(biāo)記為 COM 可見(jiàn)。

使程序集COM可見(jiàn)標(biāo)志

插件 dll 必須使用 /codebase 標(biāo)志注冊(cè)。注冊(cè)項(xiàng)目設(shè)置中可用的 COM 互操作選項(xiàng)在注冊(cè)時(shí)不使用此選項(xiàng),因此不適合這種情況。而是添加生成后操作,如下所示:

發(fā)布生成事件以將 dll 注冊(cè)為 COM 對(duì)象

這將確保在插件項(xiàng)目的每個(gè)生成(build)上正確注冊(cè)。

  • 為了增強(qiáng)調(diào)試(debugging)體驗(yàn),我建議在項(xiàng)目設(shè)置中將【啟動(dòng)外部應(yīng)用程序】設(shè)置為 SOLIDWORKS程序的完整路徑。

在調(diào)試插件時(shí)將 SOLIDWORKS 作為外部程序啟動(dòng)

這將允許通過(guò)按綠色運(yùn)行按鈕或F5鍵啟動(dòng)SOLIDWORKS并從Visual Studio自動(dòng)附加調(diào)試器。

  • 需要將注冊(cè)表信息添加到 SOLIDWORKS 注冊(cè)表分支,使其對(duì)應(yīng)用程序可見(jiàn)。為了簡(jiǎn)化過(guò)程,當(dāng)dll注冊(cè)和取消注冊(cè)為COM對(duì)象時(shí),可以通過(guò)定義函數(shù)并使用 ComRegisterFunction特性和 ComUnregisterFunction特性修飾它們來(lái)自動(dòng)添加和刪除此信息。

  • 復(fù)制粘貼插件的代碼,如下所示并編譯項(xiàng)目。

  • 編譯時(shí),可能會(huì)顯示以下警告。

未簽名程序集編譯警告

可以忽略此警告。

  • 運(yùn)行 SOLIDWORKS,啟動(dòng)時(shí)將顯示 Hello World 消息框。

上面的代碼可以在xCAD.NET框架(https://xcad.xarial.com/)的幫助下簡(jiǎn)化,如下所示:


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

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


使用API為SOLIDWORKS自動(dòng)化創(chuàng)建C#插件的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
弋阳县| 科尔| 丹凤县| 兴安盟| 芜湖市| 营口市| 阿克苏市| 涿鹿县| 丹凤县| 涟源市| 山东| 台中市| 周至县| 沁阳市| 邢台县| 霸州市| 庄浪县| 五指山市| 秦安县| 象山县| 余江县| 浦东新区| 长治县| 鹿泉市| 杂多县| 甘孜县| 莱州市| 安丘市| 铜鼓县| 彩票| 昆山市| 民勤县| 雅江县| 宾阳县| 温泉县| 淮北市| 凭祥市| 将乐县| 禹州市| 香格里拉县| 宣城市|