將程式碼片段散發為 Visual Studio 延伸模組
您可以使用 [程式碼片段管理員],將您的程式碼片段提供給您的朋友,並讓他們在自己的電腦上安裝程式碼片段。 不過,如果您有數個程式碼片段要散發,或想要更廣泛地散發,您可在 Visual Studio 延伸模組中包含您的程式碼片段檔案。 然後,Visual Studio 使用者可以安裝此延伸模組以取得程式碼片段。
必要條件
安裝 Visual Studio 延伸模組開發工作負載,以存取 [VSIX 專案] 專案範本。
設定延伸模組目錄結構
在此程序中,您將使用在逐步解說:建立程式碼片段中所建立之相同的 Hello World 程式碼片段。 本文提供程式碼片段 XML,所以您不必回頭建立程式碼片段。
TestSnippet
從 [空的 VSIX 專案] 範本建立新專案,並為專案命名。在 [TestSnippet] 專案中,新增 XML 檔案並將其稱之為
VBCodeSnippet.snippet
([.snippet] 是新的副檔名)。 使用下列 XML 取代此內容:<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title>Hello World VB</Title> <Shortcut>HelloWorld</Shortcut> <Description>Inserts code</Description> <Author>MSIT</Author> <SnippetTypes> <SnippetType>Expansion</SnippetType> <SnippetType>SurroundsWith</SnippetType> </SnippetTypes> </Header> <Snippet> <Code Language="VB"> <![CDATA[Console.WriteLine("Hello, World!")]]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>
在 [方案總管] 中,選取專案節點並新增資料夾,其名稱為在 [程式碼片段管理員] 中您要讓程式碼片段具有的名稱。 在此情況下,它應該是 HelloWorldVB。
將 .snippet 檔案移至 HelloWorldVB 資料夾。
在 [方案總管] 中選取此 .snippet 檔案,然後確認 [屬性] 視窗的 [建置動作] 已設為 [內容]、[複製到輸出目錄] 已設為 [一律複製],且 [包含在 VSIX] 已設為 [true]。
新增 .pkgdef 檔
將文字檔新增至 HelloWorldVB 資料夾,並將它命名為 HelloWorldVB.pkgdef。 這個檔案用來將特定機碼加入登錄。 如需詳細資訊,請參閱檢視片段的登錄 (選擇性)。
將下列各行加入檔案。
// Visual Basic [$RootKey$\Languages\CodeExpansions\Basic\Paths] "HelloWorldVB"="$PackageFolder$"
如果檢查此機碼,就可以確認如何指定 Visual Basic 以外的語言。
在 [方案總管] 中選取 .pkgdef 檔案,然後在 [屬性] 視窗中確認:
- [建置動作] 設定為 [內容]
- [複製到輸出目錄] 設定為 [一律複製]
- [包含在 VSIX] 設定為 [true]
將 .pkgdef 檔新增為 VSIX 資訊清單中的資產。 在 source.extension.vsixmanifest 檔案中,移至 [資產] 索引標籤,然後按一下 [新增]。
在 [新增資產] 對話方塊中,將 [類型] 設為 [Microsoft.VisualStudio.VsPackage]、將 [來源] 設為 [檔案系統上的檔案],並將 [路徑] 設為 [HelloWorldVB.pkgdef] (這應該會出現在下拉式清單中)。 選取 [確定] 以儲存這個新資產。
註冊程式碼片段
移至 [工具] > [程式碼片段管理員],並將 [語言] 設定為 [基本]。
選取 [新增...],瀏覽至方案目錄的 HelloWorldVB 資料夾,然後選取 [選取資料夾]。
HelloWorldVB 現在是其中一個程式碼片段資料夾。 展開資料夾以查看 HelloWorldVB 程式碼片段。 選取 [確定] 以儲存這個新增的資料夾。
測試程式碼片段
現在您可以確定程式碼片段適用於 Visual Studio 的實驗性執行個體。 此實驗性執行個體是 Visual Studio 的第二個複本,這複本與您用來撰寫程式碼的不同。 它可讓您處理擴充功能,而不會影響您的開發環境。
建置此專案並開始偵錯。
Visual Studio 的第二個執行個體隨即出現。
測試程式碼片段。 在實驗性執行個體中,開啟 Visual Basic 專案,並開啟其中一個程式碼檔案。 將游標放在程式碼中的某處,按一下滑鼠右鍵,然後在 [捷徑功能表] 上依序選取 [程式碼片段]、[插入程式碼片段]。
按兩下 [HelloWorldVB] 資料夾。 您應該會看到快顯視窗 [插入程式碼片段:HelloWorldVB >],其中具有下拉式清單 [HelloWorldVB]。 按兩下這個 [HelloWorldVB] 下拉式清單。
會將下行新增至程式碼檔案:
Console.WriteLine("Hello, World!")
檢視片段的登錄 (選擇性)
[.pkgdef] 檔案用來將特定機碼加入登錄。 註冊程式碼片段之後,如需在私人登錄區檢視登錄機碼,可在下列子機碼下找到它們:
Visual Studio 2022:HKEY_USERS\IsolatedHiveName\Software\Microsoft\VisualStudio\17.0_configID\Languages\CodeExpansions\Basic\Paths
Visual Studio 2019:HKEY_USERS\IsolatedHiveName\Software\Microsoft\VisualStudio\16.0_configID\Languages\CodeExpansions\Basic\Paths
若要在這個位置檢視登錄機碼,請先關閉 Visual Studio、開啟登錄編輯程式,然後將私人登錄區載入 [HKEY_USERS]。
重要
如果選取「登錄」,啟動 Visual Studio 之前,請務必先卸載私人登錄區。
例如,登錄機碼可能如這裡所示。