Dodawanie przełączników wiersza polecenia
Możesz dodać przełączniki wiersza polecenia, które mają zastosowanie do pakietu VSPackage po wykonaniu pliku devenv.exe . Użyj ProvideAppCommandLineAttribute polecenia , aby zadeklarować nazwę przełącznika i jego właściwości. W tym przykładzie przełącznik MySwitch jest dodawany dla podklasy vsPackage o nazwie AddCommandSwitchPackage bez argumentów i z pakietem VSPackage załadowanym automatycznie.
[ProvideAppCommandLine("MySwitch", typeof(AddCommandSwitchPackage), Arguments = "0", DemandLoad = 1)]
Nazwane parametry są wyświetlane w poniższych opisach.
Nazwa/nazwisko | opis |
---|---|
Argumenty | Liczba argumentów przełącznika. Może to być "*" lub lista argumentów. |
DemandLoad | Załaduj pakiet VSPackage automatycznie, jeśli jest on ustawiony na 1, w przeciwnym razie ustaw wartość 0. |
Helpstring | Ciąg pomocy lub identyfikator zasobu ciągu do wyświetlenia z devenv /?. |
Nazwisko | Przełącznik. |
PackageGuid | Identyfikator GUID pakietu. |
Pierwsza wartość argumentów to zwykle 0 lub 1. Można użyć specjalnej wartości "*", aby wskazać, że cała pozostała część wiersza polecenia jest argumentem. Może to być przydatne w przypadku scenariuszy debugowania, w których użytkownik musi przekazać ciąg polecenia debugera.
Wartość DemandLoad to true
(1) lub false
(0) wskazuje, że pakiet VSPackage powinien zostać załadowany automatycznie.
Wartość HelpString jest identyfikatorem zasobu ciągu, który jest wyświetlany w devenv /? Wyświetlanie pomocy. Ta wartość powinna znajdować się w postaci "#nnn", gdzie nnn jest liczbą całkowitą. Wartość ciągu w pliku zasobu powinna kończyć się nowym znakiem wiersza.
Wartość Name to nazwa przełącznika.
Wartość PackageGuid to identyfikator GUID pakietu, który implementuje ten przełącznik. Środowisko IDE używa tego identyfikatora GUID do znalezienia pakietu VSPackage w rejestrze, do którego ma zastosowanie przełącznik wiersza polecenia.
Pobieranie przełączników wiersza polecenia
Po załadowaniu pakietu można pobrać przełączniki wiersza polecenia, wykonując następujące kroki.
W implementacji SetSite pakietu VSPackage wywołaj metodę SVsAppCommandLine
QueryService
IVsAppCommandLine , aby pobrać interfejs.Wywołaj metodę GetOption , aby pobrać przełączniki wiersza polecenia wprowadzone przez użytkownika.
Poniższy kod pokazuje, jak sprawdzić, czy przełącznik wiersza polecenia MySwitch został wprowadzony przez użytkownika:
IVsAppCommandLine cmdline = (IVsAppCommandLine)GetService(typeof(SVsAppCommandLine));
int isPresent = 0;
string optionValue = "";
cmdline.GetOption("MySwitch", out isPresent, out optionValue);
Twoim zadaniem jest sprawdzenie przełączników wiersza polecenia za każdym razem, gdy pakiet jest ładowany.