Добавление параметров командной строки
SDK для Visual Studio разработчики могут добавлять параметры командной строки, которые применяются к их VSPackages при выполнении devenv.exe. Переключатели и связанные с ними данные, необходимо добавить в реестр следующим с ключом: [HKEY_LOCAL_MACHINE \ software \ microsoft \ VisualStudio \ 8,0 \ AppCommandLine \<MySwitch>\].
Ключ MySwitch может принимать значения 4, как показано в следующей таблице.
Имя |
Тип |
Диапазон |
Описание |
Аргументы |
REG_SZ |
>= 0 и * |
Число аргументов, которые следуют переключателем. |
DemandLoad |
REG_DWORD |
0x00000000 или 0x00000001 |
Загрузка VSPackage, если ключ присутствует. |
Сттрока справки |
REG_SZ |
Неприменимо |
Идентификатор ресурса строки, отображаемый с/? - параметр devenv. |
Пакет |
REG_SZ |
Неприменимо |
Идентификатор GUID VSPackage. |
Первое значение аргументов, как правило, 0 или 1. Специальное значение "*", может использоваться для указания, что весь остаток командной строки аргумента. Это может быть полезно для отладки сценарии, в которых пользователь должен передать в командную строку.
Значение DemandLoad определяет a true (1); или false (0) ситуаций, интегрированная среда разработки (ide) должна обеспечить загрузку пакет. Это еще одна из схем пупинизации интегрированной среды разработки задержанных.
Значение HelpString идентификатор ресурса строки, которая отображается в/? - параметр devenvОтображение Справки. Это значение должно быть в форме "#nnn", где nnn целое число. Строковое значение в файле ресурсов должен завершиться в символе новой линии.
Значение пакета GUID пакета, реализующего этот параметр. Интегрированная среда разработки использует этот идентификатор GUID для поиска VSPackage в реестре, к которому применяется параметр командной строки.
Восстановить параметры командной строки
При загрузке пакета можно восстановить параметры командной строки, выполнив следующие шаги.
В VSPackage SetSite реализация вызов QueryService на SVsAppCommandLine доступ IVsAppCommandLine интерфейс.
Вызов GetOption восстановить параметры командной строки, которые пользователь ввел.
Ответственность проверить для переключателей командной строки каждый раз, когда пакет загружен.