Udostępnij za pośrednictwem


Wskazówki: tworzenie kreatora

W Visual Studio 2013, dodatki są przestarzałe.Zalecamy uaktualnienie dodatków do rozszerzeń VSPackage.Aby uzyskać więcej informacji o uaktualnianiu, zobacz Często zadawane pytania: konwertowanie dodatków na rozszerzenia pakietu VSPackage.

Kreatory, takie jak Kreator dodatków, to programy, które prowadzą użytkownika przez szereg działań zmierzających do wykonania złożonego, powtarzającego się lub trudnego zadania.Windows, na przykład używa kreatorów, aby połączyć się z zasobami sieci, drukarkami i tak dalej.

W języku Visual Studio kreatory zazwyczaj zadają szereg pytań, które zbierają dane wejściowe od użytkownika, a następnie używają wyników do generowania kodu.Kreatory nie zawsze wyświetlają interfejs użytkownika (UI).Mogą one być zaprogramowane, aby niewidocznie generować kod w tle.

Istnieją trzy różne rodzaje kreatorów.

  • Kreator nowego projektu — jak sama nazwa wskazuje, te kreatory są używane do generowania nowego kodu dla określonego typu projektu, dając użytkownikowi punkt początkowy, od którego mogą dodać swój własny kod.Jest to najczęściej używany typ kreatora.

  • Kreatory Dodaj nowy element— te kreatory są używane do dodawania nowych elementów, takich jak formularze sieci Web, pliki tekstowe, strony HTML, strony XML i tak dalej, do projektu.

  • Kreatory niestandardowe — te kreatory nie są wywoływane z okna dialogowego.Zamiast tego są one wywoływane bezpośrednio z dodatków, makr lub innych typów kodu.Mogą lub nie mogą wyświetlać interfejs użytkownika.W obu przypadkach generują kod.Jest to najrzadziej używany typ kreatora.

Niezależnie od rodzaju kreatora, wszystkie one mają wspólne cechy.

  • Są to obiekty .NET, które implementują interfejs IDTWizard i mają skojarzoną metodę, Execute, która zawiera kod przeznaczony do uruchomienia w kreatorze.

  • Wszystkie korzystają z pliku .vsz do wyświetlania się w Visual Studio.

  • Wszystkie one generują kod lub wykonują pewne inne zadanie.

Można dostosować wygląd elementów w kreatorach, które tworzysz.Kreatory najczęściej składają się z jednego lub kilku okien lub stron.Strony mogą zawierać opisowy obraz, taki jak w górnej lub lewej części strony, opis etykiety, instrukcje i obszar, w którym formanty nawigacyjne, takie jak Dalej i Wstecz, mogą być umieszczone.

Proces tworzenia kreatorów w Visual C++ różni się nieco od procesu tworzenia standardowych kreatorów Visual Studio.Aby uzyskać dodatkowe informacje o sposobie tworzenia kreatorów przeznaczonych dla programu Visual C++, zobacz Projektowanie kreatora i Tworzenie kreatora niestandardowego.

[!UWAGA]

Komputer może polazać inne nazwy lub lokalizacje dla niektórych elementów interfejsu użytkownika Visual Studio w dalszych instrukcjach.Te elementy są determinowane przez numer edycji Twojego programu Visual Studio oraz Twoje ustawienia.Aby uzyskać więcej informacji, zobacz Dostosowywanie ustawień środowiska deweloperskiego w Visual Studio.

Przykład kreatora podstawowego

Kreator dodatek do programu Visual Studio

Ta ilustracja przedstawia panel Kreatora Add-In, typ kreatora tworzącego nowe projekty, który prowadzi przez szereg czynności zmierzając do utworzenia dodatku.Można dostosować wygląd kreatorów, ale Kreatora dodatku jest dobrym przykładem stylu standardowego typu kreatora.Ukończone kreatory stają się dostępnymi szablonami w oknie dialogowym Nowy projekt lub Dodaj nowy element.

Poniżej przedstawiono sposób tworzenia podstawowego kreator i opcjonalne nadawanie mu ikony niestandardowej.

Aby utworzyć podstawowy kreator w języku Visual Basic i Visual C#

  1. Uruchom Visual Studio jako Administrator.Rejestracja kreatora wymaga aktualizacji rejestru, więc wymaga tego uprawnienia.

  2. Utwórz nowy projekt Biblioteki klas o nazwie MyNewWizard.

  3. Dodaj odwołania do EnvDTE i EnvDTE80 do projektu.

    Aby to zrobić, kliknij prawym przyciskiem i kliknij Dodaj, Odwołanie.Na karcie .NET w oknie dialogowym Odwołanie kliknij pozycje EnvDTE i EnvDTE80, a następnie kliknij przycisk OK.

W module klasy umieść odwołania do obiektów EnvDTE i EnvDTE80 oraz zaimplementuj interfejs IDTWizard.W tym przykładzie dla języka Visual C# należy także dodać odwołanie do obiektów System.Windows.Forms i System.Runtime.InteropServices.

Imports EnvDTE 
Imports EnvDTE80
Public Class Class1
    Implements IDTWizard
using System;
using System.Collections.Generic;
using System.Text;
using EnvDTE; 
using EnvDTE80; 
using System. Windows.Forms;

using System.Runtime.InteropServices;

namespace MyNewWizard
{

[ComVisible(true)]

[Guid("20184B81-7C38-4E02-A1E3-8D564EEC2D25"),

ProgId("MyNewWizard.Class1")]

    public class Class1 : IDTWizard
    {
    }
}

Podczas dodawania instrukcji Implements do pozycji Visual Basic, umieść kursor na końcu wiersza i naciśnij klawisz enter, aby automatycznie utworzyć procedurę metody Execute.Jednak dla języka Visual C# należy dodać procedurę Execute ręcznie:

public class Class1 : IDTWizard
    {
    public void Execute(object Application,  
        int hwndOwner, ref object[] contextParams,  
        ref object[] customParams,  
        ref EnvDTE.wizardResult retval)
  1. Dodaj kod, za pomocą którego kreator ma uruchomić procedurę Execute.W tym przykładzie po prostu dodamy proste okno komunikatu.

    Powinieneś mieć:

    Imports EnvDTE
    Imports EnvDTE80
    
    Public Class Class1
        Implements IDTWizard
    
        Public Sub Execute(ByVal Application As Object, ByVal _
        hwndOwner As Integer, ByRef ContextParams() As Object, ByRef _
        CustomParams() As Object, ByRef retval As EnvDTE.wizardResult) _
        Implements EnvDTE.IDTWizard.Execute
            MsgBox("The wizard is now running.")
        End Sub
    End Class 
    
    using System.Text;
    using EnvDTE;
    using EnvDTE80;
    using System.Windows.Forms;
    using System.Runtime.InteropServices;
    
    namespace MyNewWizardCS
    {
        public class Class1 : IDTWizard
        {
    
        public void Execute(object Application, 
            int hwndOwner, ref object[] contextParams, 
            ref object[] customParams, 
            ref EnvDTE.wizardResult retval)
        {
            MessageBox.Show("The wizard is now running.");
        }
    }
    
    }
    

    Procedura Execute jest wywoływana, gdy uruchamiany jest kreator.

  2. Kliknij prawym przyciskiem myszy projekt w Solution Explorer i kliknij Właściwości, aby otworzyć stronę Właściwości projektu, kliknij kartę Kompiluj, a następnie zaznacz okno Zarejestruj dla współdziałania z modelem COM u dołu strony.

  3. W pliku AssemblyInfo.cs znajdź atrybut ComVisible i ustaw go na wartość true.

  4. Skompiluj projekt, aby utworzyć klasy biblioteki .dll, klikając Kompiluj rozwiązanie w menu Kompilacja.

  5. Utwórz plik tekstowy .vsz dla kreatora o nazwie MyNewWizard.vsz.

    Aby to zrobić, utwórz kopię istniejącego pliku .vsz, takie jak jedna z tych znajdujących się w <Visual Studio Install Directory>\VC#\CSharpProjectItems\Windows Forms, i zmień jego nazwę na "MyNewWizard.vsz".

    Plik .vsz jest to plik tekstowy, który umożliwia Visual Studio rozpoznanie kreatora i wyświetlenie go w oknie dialogowym Nowy projekt lub Dodaj nowy element.Parametr Wizard powinien zostać ustawiony na progID (Project.Classname) projektu lub GUID.Aby uzyskać więcej informacji, zobacz Konfigurowanie plików .Vsz do uruchamiania kreatorów.

    [!UWAGA]

    Opcjonalnie można także utworzyć plik VSDir dla kreatora.Zawiera informacje, które są wyświetlane jako opis dla kreatora w oknie dialogowym Nowy projekt lub Nowy plik.To również pozwala na określenie ikony i ustawienie jej miejsca na liście.Aby uzyskać więcej informacji, zobacz Dodawanie kreatorów do okien dialogowych Dodawanie elementu i Nowy projekt za pomocą plików .Vsdir.

  6. Zastąp zawartość pliku MyNewWizard.vsz następującą:

    VSWizard 7.0
    Wizard=MyNewWizard.Class1
    Param=First Item
    Param=Second Item
    
  7. Zapisz nowy plik .vsz w katalogu, w którym kreator ma być wyświetlany.

    Na przykład chcemy, aby kreator był wyświetlany w oknie dialogowym Dodaj nowy element dla projektów w języku Visual Basic, więc zapisujemy plik .vsz w następującym katalogu: <Visual Studio Install Directory>\VB\VBProjectItems.

  8. Zakończ działanie programu Visual Studio i uruchom go ponownie.

    Zmusza to Visual Studio do odczytywania nowego pliku .vsz.

  9. Utwórz nowy projekt Visual Basic, taki jak projekt aplikacji systemu Windows.

  10. Kliknij projekt prawym przyciskiem myszy, wskaż polecenie Dodaj, a następnie kliknij Nowy element.

    Powinieneś widzieć Twój nowy kreator (MyNewWizard) w oknie dialogowym Dodaj nowe elementy.

  11. Kliknij przycisk kreatora, a następnie kliknij przycisk Dodaj.

    Widzisz komunikat, "Kreator jest teraz aktywny."

Aby wyświetlić ikonę niestandardową dla nowego kreatora

  • Umieść plik ikony o takiej samej nazwie pliku podstawowego jak plik .dll, ale z rozszerzeniem .ico, w tym samym katalogu, co plik kreatora.

    Na przykład jeśli kreator ma nazwę MojNowyKreator.dll, nazwij plik .ico MojNowyKreator.ico.

    -lub-

  • Po utworzeniu pliku VSDir należy tam określić ścieżkę do pliku ikon (.ico).

Zobacz też

Zadania

Porady: tworzenie dodatku

Informacje

IDTWizard

Koncepcje

Wykres modelu obiektów automatyzacji

Dodawanie kreatorów do okien dialogowych Dodawanie elementu i Nowy projekt za pomocą plików .Vsdir

Konfigurowanie plików .Vsz do uruchamiania kreatorów

Inne zasoby

Tworzenie dodatków i kreatorów

Visual Studio — Polecenia i przełączniki