Komut satırı anahtarları ekleme
devenv.exe yürütülürken VSPackage'ınıza uygulanan komut satırı anahtarları ekleyebilirsiniz. Anahtarın adını ve özelliklerini bildirmek için kullanın ProvideAppCommandLineAttribute . Bu örnekte, AddCommandSwitchPackage adlı VSPackage alt sınıfı için MySwitch anahtarı bağımsız değişken olmadan ve VSPackage otomatik olarak yüklenmiş olarak eklenir.
[ProvideAppCommandLine("MySwitch", typeof(AddCommandSwitchPackage), Arguments = "0", DemandLoad = 1)]
Adlandırılmış parametreler aşağıdaki açıklamalarda gösterilir.
Adı | Açıklama |
---|---|
Bağımsız değişkenler | Anahtarın bağımsız değişken sayısı. "*" veya bağımsız değişkenlerin listesi olabilir. |
DemandLoad | Bu değer 1 olarak ayarlandıysa VSPackage'ı otomatik olarak yükleyin, aksi takdirde 0 olarak ayarlayın. |
Helpstring | Devenv /? ile görüntülenecek dizenin yardım dizesi veya kaynak kimliği. |
Adı | Anahtar. |
PackageGuid | Paketin GUID değeri. |
Bağımsız Değişkenlerin ilk değeri genellikle 0 veya 1'dir. Komut satırının geri kalanının bağımsız değişken olduğunu belirtmek için özel bir '*' değeri kullanılabilir. Bu, kullanıcının hata ayıklayıcı komut dizesini geçirmesi gereken hata ayıklama senaryoları için yararlı olabilir.
DemandLoad değeri true
(1) veya false
(0), VSPackage'ın otomatik olarak yüklenmesi gerektiğini gösterir.
HelpString değeri, devenv /? içinde görünen dizenin kaynak kimliğidir Yardım görüntüleme. Bu değer "#nnn" biçiminde olmalıdır; burada nnn bir tamsayıdır. Kaynak dosyasındaki dize değeri yeni bir satır karakteriyle bitmelidir.
Ad değeri anahtarın adıdır.
PackageGuid değeri, bu anahtarı uygulayan paketin GUID değeridir. IDE, komut satırı anahtarının uygulandığı kayıt defterinde VSPackage'ı bulmak için bu GUID'yi kullanır.
Komut satırı anahtarlarını alma
Paketiniz yüklendiğinde, aşağıdaki adımları tamamlayarak komut satırı anahtarlarını alabilirsiniz.
VSPackage'ınızın SetSite uygulamasında arabirimi almak için çağrısında SVsAppCommandLine
QueryService
bulunurIVsAppCommandLine.Kullanıcının girdiği komut satırı anahtarlarını almak için çağrısı GetOption .
Aşağıdaki kod, MySwitch komut satırı anahtarının kullanıcı tarafından girilip girildiğinin nasıl öğrenildiğini gösterir:
IVsAppCommandLine cmdline = (IVsAppCommandLine)GetService(typeof(SVsAppCommandLine));
int isPresent = 0;
string optionValue = "";
cmdline.GetOption("MySwitch", out isPresent, out optionValue);
Paketiniz her yüklendiğinde komut satırı anahtarlarınızı denetlemek sizin sorumluluğunuzdadır.