Udostępnij za pośrednictwem


Tworzenie rozszerzenia za pomocą polecenia menu

W tym przewodniku pokazano, jak utworzyć rozszerzenie za pomocą polecenia menu uruchamianego Notatnik.

Tworzenie polecenia menu

  1. Utwórz projekt VSIX o nazwie FirstMenuCommand. Szablon projektu VSIX można znaleźć w oknie dialogowym Nowy projekt , wyszukując frazę "vsix".

  2. Po otwarciu projektu dodaj niestandardowy szablon elementu polecenia o nazwie FirstCommand. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz polecenie Dodaj>nowy element. W oknie dialogowym Dodawanie nowego elementu przejdź do pozycji Rozszerzalność elementów>języka C#, a następnie wybierz pozycję Polecenie. W polu Nazwa w dolnej części okna zmień nazwę pliku polecenia na FirstCommand.cs.

  3. Skompiluj projekt i rozpocznij debugowanie.

    Zostanie wyświetlone eksperymentalne wystąpienie programu Visual Studio. Aby uzyskać więcej informacji na temat wystąpienia eksperymentalnego, zobacz Wystąpienie eksperymentalne.

  4. W wystąpieniu eksperymentalnym otwórz okno Zarządzanie rozszerzeniami>. Tutaj powinno zostać wyświetlone rozszerzenie FirstMenuCommand . (Jeśli otworzysz Zarządzaj rozszerzeniami w wystąpieniu roboczym programu Visual Studio, ale nie zobaczysz polecenia FirstMenuCommand).

Teraz przejdź do menu Narzędzia w wystąpieniu eksperymentalnym. Powinno zostać wyświetlone polecenie Invoke FirstCommand ( Wywołaj polecenie FirstCommand ). W tym momencie polecenie wyświetli pole komunikatu z komunikatem FirstCommand Inside FirstMenuCommand.FirstCommand.MenuItemCallback(). Zobaczymy, jak faktycznie uruchomić Notatnik z tego polecenia w następnej sekcji.

Zmienianie programu obsługi poleceń menu

Teraz zaktualizujmy program obsługi poleceń, aby uruchomić Notatnik.

  1. Zatrzymaj debugowanie i wróć do działającego wystąpienia programu Visual Studio. Otwórz plik FirstCommand.cs i dodaj następującą instrukcję using:

    using System.Diagnostics;
    
  2. Znajdź prywatny konstruktor FirstCommand. W tym miejscu polecenie jest przyłączone do usługi poleceń, a program obsługi poleceń jest określony. Zmień nazwę programu obsługi poleceń na Start Notatnik w następujący sposób:

    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. Usuń metodę Execute i dodaj metodęStartNotepad, która po prostu rozpocznie Notatnik:

    private void StartNotepad(object sender, EventArgs e)
    {
        ThreadHelper.ThrowIfNotOnUIThread();
    
        Process proc = new Process();
        proc.StartInfo.FileName = "notepad.exe";
        proc.Start();
    }
    
  4. Teraz wypróbuj to. Po rozpoczęciu debugowania projektu i kliknięciu pozycji Narzędzia>Wywołaj pierwszepolecenia powinno zostać wyświetlone wystąpienie Notatnik.

    Możesz użyć wystąpienia Process klasy, aby uruchomić dowolny plik wykonywalny, a nie tylko Notatnik. Wypróbuj ją na przykład za pomocą calc.exepolecenia .

Czyszczenie środowiska eksperymentalnego

Jeśli tworzysz wiele rozszerzeń lub po prostu eksplorujesz wyniki z różnymi wersjami kodu rozszerzenia, środowisko eksperymentalne może przestać działać tak, jak powinno. W takim przypadku należy uruchomić skrypt resetowania. Jest ona nazywana resetowaniem wystąpienia eksperymentalnego programu Visual Studio i jest dostarczana jako część zestawu Visual Studio SDK. Ten skrypt usuwa wszystkie odwołania do rozszerzeń ze środowiska eksperymentalnego, dzięki czemu można zacząć od podstaw.

Możesz uzyskać dostęp do tego skryptu na jeden z dwóch sposobów:

  1. Na pulpicie znajdź pozycję Resetuj wystąpienie eksperymentalne programu Visual Studio.

  2. W wierszu polecenia uruchom następujące polecenie:

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

Wdrażanie rozszerzenia

Teraz, gdy masz rozszerzenie narzędzia uruchomione w żądany sposób, nadszedł czas, aby zastanowić się nad udostępnieniem go znajomym i współpracownikom. Jest to łatwe, o ile mają zainstalowany program Visual Studio 2015. Wszystko, co musisz zrobić, to wysłać do nich skompilowany plik vsix . (Pamiętaj, aby skompilować go w trybie wydania).

Plik vsix dla tego rozszerzenia można znaleźć w katalogu FirstMenuCommand bin. W szczególności, zakładając, że utworzono konfigurację wydania, będzie ona mieć następujące elementy:

<katalog> kodu\FirstMenuCommand\FirstMenuCommand\bin\Release\FirstMenuCommand.vsix

Aby zainstalować rozszerzenie, znajomy musi zamknąć wszystkie otwarte wystąpienia programu Visual Studio, a następnie kliknąć dwukrotnie plik vsix , który wyświetli Instalator VSIX. Pliki są kopiowane do katalogu %LocalAppData%\Microsoft\VisualStudio<version>\Extensions .

Gdy znajomy ponownie pojawi się program Visual Studio, znajdzie rozszerzenie FirstMenuCommand w obszarze Rozszerzenia narzędzi>i Aktualizacje. Mogą również przejść do pozycji Rozszerzenia i Aktualizacje, aby odinstalować lub wyłączyć rozszerzenie.

Następne kroki

W tym przewodniku pokazano tylko niewielką część tego, co można zrobić za pomocą rozszerzenia programu Visual Studio. Oto krótka lista innych (dość łatwych) rzeczy, które można wykonać za pomocą rozszerzeń programu Visual Studio:

  1. Wiele innych czynności można wykonać za pomocą prostego polecenia menu:

    1. Dodaj własną ikonę: Dodawanie ikon do poleceń menu

    2. Zmień tekst polecenia menu: Zmień tekst polecenia menu

    3. Dodawanie skrótu menu do polecenia: wiązanie skrótów klawiaturowych z elementami menu

  2. Dodaj różne rodzaje poleceń, menu i pasków narzędzi: Rozszerzanie menu i poleceń

  3. Dodawanie okien narzędzi i rozszerzanie wbudowanych okien narzędzi programu Visual Studio: rozszerzanie i dostosowywanie okien narzędzi

  4. Dodawanie funkcji IntelliSense, sugestii kodu i innych funkcji do istniejących edytorów kodu: rozszerzanie edytora i usług językowych

  5. Dodaj opcje i strony właściwości oraz ustawienia użytkownika do rozszerzenia: rozszerzanie właściwości i okna Właściwości oraz rozszerzanie ustawień i opcji użytkownika

    Inne rodzaje rozszerzeń wymagają nieco więcej pracy, takich jak tworzenie nowego typu projektu (rozszerzanie projektów), tworzenie nowego typu edytora (tworzenie niestandardowych edytorów i projektantów) lub implementowanie rozszerzenia w izolowanej powłoce: izolowana powłoka programu Visual Studio