Vytvořte rozšíření pomocí příkazu v nabídce.

Tento názorný postup ukazuje, jak vytvořit rozšíření s příkazem v nabídce, který spustí Poznámkový blok.

Vytvořit příkaz nabídky

  1. Vytvořte projekt VSIX s názvem FirstMenuCommand. Šablonu projektu VSIX najdete v dialogovém okně Nový projekt vyhledáním "vsix".

  2. Po otevření projektu přidejte vlastní šablonu položky příkazu s názvem FirstCommand. V Průzkumníku řešení klepněte pravým tlačítkem na uzel projektu a vyberte Přidat>Nová položka. V dialogovém okně Přidat novou položku přejděte na C# položky>Rozšiřitelnost a vyberte Příkaz. V poli Název v dolní části okna změňte název souboru příkazu na FirstCommand.cs.

  3. Kompilujte projekt a spusťte ladění.

    Zobrazí se experimentální instance sady Visual Studio. Další informace o experimentální instanci naleznete v tématu Experimentální instance.

  4. V experimentální instanci otevřete okno Extensions>Manage Extensions. Tady byste měli vidět rozšíření FirstMenuCommand. (Pokud v pracovní instanci sady Visual Studio otevřete Spravovat rozšíření, neuvidíte FirstMenuCommand).

Teď v experimentální instanci přejděte do nabídky Tools. Měl by se zobrazit příkaz Invoke FirstCommand. V tuto chvíli příkaz zobrazí okno se zprávou: "FirstCommand Inside FirstMenuCommand.FirstCommand.MenuItemCallback()". V další části uvidíme, jak ve skutečnosti spustit Poznámkový blok z tohoto příkazu.

Změnit obslužnou rutinu příkazu nabídky

Nyní aktualizujeme zpracovatele příkazů ke spuštění Poznámkového bloku.

  1. Zastavte ladění a vraťte se k funkční instanci sady Visual Studio. Otevřete soubor FirstCommand.cs a přidejte následující příkaz using:

    using System.Diagnostics;
    
  2. Vyhledejte privátní konstruktor FirstCommand. Tady je příkaz propojen se službou příkazů a je specifikován obslužný program příkazů. Změňte název obslužné rutiny příkazu na StartNotepad následujícím způsobem:

    private FirstCommand(AsyncPackage package, OleMenuCommandService commandService)
    {
        this.package = package ?? throw new ArgumentNullException(nameof(package));
        commandService = commandService ?? throw new ArgumentNullException(nameof(commandService));
    
        CommandID menuCommandID = new CommandID(CommandSet, CommandId);
        // Change to StartNotepad handler.
        MenuCommand menuItem = new MenuCommand(this.StartNotepad, menuCommandID);
        commandService.AddCommand(menuItem);
    }
    
  3. Odeberte metodu Execute a přidejte metodu StartNotepad, která spustí poznámkový blok:

    private void StartNotepad(object sender, EventArgs e)
    {
        ThreadHelper.ThrowIfNotOnUIThread();
    
        Process proc = new Process();
        proc.StartInfo.FileName = "notepad.exe";
        proc.Start();
    }
    
  4. Teď to zkuste. Když spustíte ladění projektu a kliknete na Tools>Invoke FirstCommand, měla by se zobrazit instance Poznámkového bloku.

    Instanci třídy Process můžete použít ke spuštění libovolného spustitelného souboru, nejen poznámkového bloku. Zkuste to například pomocí calc.exe.

Vyčištění experimentálního prostředí

Pokud vyvíjíte více rozšíření nebo jen zkoumáte výsledky s různými verzemi kódu rozšíření, může experimentální prostředí přestat fungovat tak, jak by mělo. V tomto případě byste měli spustit skript pro resetování. Nazývá se Resetovat experimentální instanci sady Visual Studioa dodává se jako součást sady Visual Studio SDK. Tento skript odebere všechny odkazy na vaše rozšíření z experimentálního prostředí, takže můžete začít úplně od začátku.

K tomuto skriptu se dostanete jedním ze dvou způsobů:

  1. Na ploše vyhledejte Resetovat experimentální instanci sady Visual Studio.

  2. Z příkazového řádku spusťte následující příkaz:

    <VSSDK installation>\VisualStudioIntegration\Tools\Bin\CreateExpInstance.exe /Reset /VSInstance=<version> /RootSuffix=Exp && PAUSE
    
    

Nasazení rozšíření

Teď, když máte rozšíření nástrojů spuštěné tak, jak chcete, je čas přemýšlet o sdílení s přáteli a kolegy. To je snadné, pokud mají nainstalovaný Visual Studio 2015. Stačí, když je odešlete soubor .vsix, který jste vytvořili. (Nezapomeňte ho sestavit v režimu Release.)

Soubor .vsix pro tuto příponu najdete v adresáři FirstMenuCommand bin. Konkrétně, předpokládáme-li, že jste vytvořili konfiguraci Release, bude v:

<adresář kódu>\FirstMenuCommand\FirstMenuCommand\bin\Release\FirstMenuCommand.vsix

Pokud chcete nainstalovat rozšíření, váš přítel musí zavřít všechny otevřené instance sady Visual Studio a poté dvakrát kliknout na soubor .vsix, což zobrazí instalační program VSIX. Soubory se zkopírují do adresáře %LocalAppData%\Microsoft\VisualStudio<verze>\Extensions.

Když váš přítel znovu otevře Visual Studio, najde rozšíření FirstMenuCommand v Tools>Rozšíření a aktualizace. Můžou také přejít na Rozšíření a aktualizace a odinstalovat nebo zakázat rozšíření.

Další kroky

Tento názorný postup vám ukázal jen malou část toho, co můžete dělat s rozšířením sady Visual Studio. Tady je krátký seznam dalších (přiměřeně snadných) věcí, které můžete dělat s rozšířeními sady Visual Studio:

  1. Pomocí jednoduchého příkazu nabídky můžete dělat spoustu dalších věcí:

    1. Přidejte vlastní ikonu: Přidejte ikony do příkazů nabídky

    2. Změna textu příkazu nabídky: Změnit text příkazu nabídky

    3. Přidání zástupce nabídky do příkazu: Vytvoření vazby klávesových zkratek k položkám nabídky

  2. Přidání různých typů příkazů, nabídek a panelů nástrojů: Rozšíření nabídek a příkazů

  3. Přidání oken nástrojů a rozšíření integrovaných oken nástrojů sady Visual Studio: Rozšíření a přizpůsobení oken nástrojů

  4. Přidání IntelliSense, návrhů kódu a dalších funkcí do existujících editorů kódu: Rozšíření editoru a jazykových služeb

  5. Přidání možností a stránek vlastností a uživatelských nastavení do rozšíření: Rozšíření vlastností a okna Vlastnosti a Rozšíření uživatelských nastavení a možností

    Jiné typy rozšíření vyžadují o něco více práce, například vytvoření nového typu projektu (Rozšíření projektů) nebo vytvoření nového typu editoru (Vytváření vlastních editorů a návrhářů).