2009-12-09 61 views
14

我想爲visual studio製作一個插件......但我不知道從哪裏開始。 雖然很容易找到Eclipse插件開發指南,但我很難找到VS插件開發的良好指南。Visual Studio插件開發,第一步

我想我在這裏問什麼,我是從哪裏開始的?

回答

11

我建議從這裏開始是一個起點。創建VS加載項非常簡單。一些關鍵字,如果你想搜索更多:VS插件(插件不是很常用),VS可擴展性,VS自動化。

3

從未爲Visual Studio開發過單個插件,但這裏是我的想法。對於VS的插件歷史上是一個噩夢:所有這些COM接口從各種奇數末端突出,WEIRD_CONSTANTS_IN_GLOBAL_SCOPE等等。如果我要開發一個VS插件,我的目標是Visual Studio 2010,也就是他們說,在這方面真的很好。此外,如果您的插件與C#/ VB.NET代碼有關,請考慮爲ReSharper編寫一個插件。

4

有一個codeplex項目here,展示瞭如何創建一個VS插件,但是我發現它比較常見的「插件入門」指南非常複雜,並且在具體實現方面更詳細。 http://www.mztools.com/resources_vsnet_addins.aspx 這是VS很有一套資源的加載項開發商: - ..

無論如何,它可能會爲你:)

11

開始指向工具,文檔等的最好的地方是Visual Studio Extensibility Dev Center on MSDN

接下來你要做什麼取決於你想要建立的東西。如果你只想要一個簡單的插件(可能是一個菜單命令,它運行一些代碼,對the Visual Studio Automation model: EnvDTE),你可以做一個Addin。 (在其他項目類型下 - >新建項目對話框中的擴展性下有​​Addins模板)

如果您希望自己的擴展程序成爲「一等公民」(即完全訪問其他API框中的擴展名),您應該下載Visual Studio SDK並創建一個VSPackage。儘管Visual Studio依然存在(甚至在2010年)基本上基於COM的應用程序,但還有託管庫(例如Microsoft.VisualStudio.Shell。*)和用於完成多種擴展的互操作程序集。

Visual Studio 2010中的編輯器在託管代碼和uses MEF as its extensibility model中重建。您還可以在2010年的Visual Studio SDK中找到基於MEF的編輯器擴展模板。