Visual Studio 2010 için bir VSIX uzantısı yazıyorum ve bu uzantıdaki hataları nasıl ayıklayacağımı bulamıyorum.
Açık bir yöntem, mesajların çıktısını almaktır. Uzantı şablonu kullanır Trace.WriteLine()
. Ama çıktısını nerede bulabilirim?
Yanıtlar:
Visual Studio Extensions, diğer uygulamalar gibi hata ayıklanabilir. Devenv'i yüklü uzantı ile başlatmak için hata ayıklama deneyimini kurmanız yeterlidir. Takip etmeyi dene
İçin radyo düğmesine tıklayın Start External Program
. Devenv.exe ikili dosyasına gelin. Makinemde şu konumda bulunuyor
C: \ Program Dosyaları (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ devenv.exe
X64 olmayan bir makinede "(x86)" bölümünü kaldırabilirsiniz.
Ardından komut satırı bağımsız değişkenlerini olarak ayarlayın /rootsuffix Exp
. Bu, Visual Studio'ya normal yapılandırma kovanı yerine deneysel kovanı kullanmasını söyler. Varsayılan olarak, derlendiklerinde VSIX uzantıları kendilerini deneysel kovana kaydeder.
Artık F5 yapabilirsiniz ve kullanılabilir bir uzantı olarak VSIX'inizle Visual Studio başlatılacaktır.
@JaredPar tarafından kabul edilen cevap teknik olarak doğrudur, ancak kodun her yeni kopyasını her aldığınızda ve csproj.user
dosya silindiğinde her geliştirici için yeniden yapmanız gerektiği gerçeğinden muzdariptir . Bu şekilde yaptığınızda, ayarlar csproj.user
dosyaya kaydedilir .
Daha iyi bir seçenek, ayarları csproj
kaybolmamaları için dosyaya koymaktır . Ne yazık ki, Visual Studio bunu otomatik olarak yapmanıza izin vermez, bu nedenle ayarları manuel olarak eklemeniz gerekir. Neyse ki, ayarlar herhangi bir proje için aynıdır.
Sağ tıklayın ve projeyi kaldırın, ardından tekrar sağ tıklayın ve csproj
proje dosyası dosyasını düzenleyin . XML'de, PropertyGroup
örneğin hemen sonrasına aşağıdakileri ekleyin TargetFramework
.
<StartAction>Program</StartAction>
<StartProgram>$(DevEnvDir)\devenv.exe</StartProgram>
<StartArguments>/rootsuffix Exp</StartArguments>
Bunun aşağıdaki avantajları vardır;
@MBulli'nin yorumlarda belirttiği gibi, kabul edilen cevapta değişiklik yaptıysanız, *.csproj.user
dosyanızı silin çünkü içindeki ayarlar ana csproj
dosyaya eklediklerinizi geçersiz kılacaktır .
OutputWindowHelper.OutputString Genel 'çıkış pencere camı (Ctrl Alt o) yöntem yazma. Bu satırı VS 2013'te almak için .csproj referanslarıma ekledim
<Reference Include="Microsoft.VisualStudio.Services.Integration, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
Ayrıca bu yanıta bakın .