Aracılığıyla paylaş


Just-In-Time hata ayıklama

Bir özel durum ya da kilitlenme bilgi dış Visual Studio çalışan bir uygulama ortaya çıktığında just-In-Time hata ayıklama Visual Studio otomatik olarak başlatır.Visual Studio çalışmadığı zamanlarda uygulamanızı test edin ve bir sorun ortaya çıktığında Visual Studio ile hata ayıklama başlatmak etkinleştirir.

Just-In-Time hata ayıklama için Windows Store apps çalışmıyor.Visualizers gibi doğal bir uygulamada bulunan yönetilen kodun Just-In-Time hata ayıklaması çalışmıyor.

Just-In-Time kullanarak hata ayıklama

Visual Studio, Just-In-Time yüklediğinizde hata ayıklaması varsayılan olarak etkindir.Devre dışı bırakma veya yeniden etkinleştirmek Just-In-Time hata ayıklaması gerekiyorsa, bkz: Etkinleştirme veya devreden çıkarma Just-In-Time hata ayıklama.

Just-In-Time, hata ayıklama etkinken, Visual Studio dışında uygulamanızı test edebilirsiniz.Kilitlenme ya da özel durum oluştuğunda, aşağıdakine benzer bir ileti içeren bir iletişim kutusu görünür göreceksiniz:

İşlenmeyen özel durum ('System.TypeInitializationException') terrarium.exe[3384 oluştu]

Bu iletişim kutusu göründüğünde, aşağıdaki yordamı kullanarak hata ayıklama başlayabilirsiniz.

Just-In-bir hata olduğunda hata ayıklama Time başlamak için oluşur

  1. Just-In-Time hata ayıklama iletişim kutusunda, Olası hata ayıklayıcıları tıklatın Visual Studio 2012 yeni bir örneğini veya bir örneği zaten çalışıyor Visual Studio tıklatın.

  2. Visual Studio için gelecekteki tüm çökme otomatik olarak kullanmak için Varsayılan olarak seçili durumdaki hata ayıklayıcı Set.

  3. Ne tür kodu, hata ayıklamak için tıklatın görebileceğini seçmek isterseniz, el ile hata ayıklama motorları seçin.Bu seçeneği seçmezseniz, Visual Studio kod türü için uygun hata ayıklama motorları programınıza otomatik olarak seçer.

  4. Tamam düğmesini tıklatın.

  5. Uygulamanızın güvenilmeyen koduna sahip bir derleme içeriyorsa, güvenlik uyarısı iletişim kutusu görüntülenir.Bu iletişim kutusu hata ayıklama ile devam etmek isteyip istemediğinizi karar vermenize olanak sağlar.Hata ayıklama ile devam etmeden önce kod güven karar verin.Kodu sizin yazmanız?Kodlayıcı güveniyor musunuz?Uygulama uzaktaki bir makinede çalışan, işlemin adını hatırlarsınız?Uygulama yerel olarak çalışsa bile, güvenilir gelmez.Internet Explorer'da, örneğin, kötü niyetli bir ActiveX denetimi çalıştırıyor olmanız.Bilgisayarınızda çalışan bu tür kötü amaçlı kod olasılığını göz önünde bulundurun.Kod üzeresiniz, karar verirseniz, hata ayıklama güvenilir ı Debug.Aksi halde,'ı Yoksa hata ayıklama.

Etkinleştirme veya devreden çıkarma Just-In-Time hata ayıklama

Etkinleştirmek veya Just-In-den hata ayıklama Time devre dışı seçenekleri iletişim kutusu.

Etkinleştir veya devre dışı bırakma Just-In-Time hata ayıklama

  1. Araçlar menüsünden Seçenekler’i tıklatın.

  2. İçinde seçenekleri Seç iletişim kutusunda hata ayıklama klasörü.

  3. İçinde hata ayıklama klasöründeki Just-In-Time sayfa.

  4. İçinde Just-In-Time etkinleştirme kodu bu tür hata ayıklama kutusunu seçin ya da ilgili program türlerini temizlemek: yönetilen, yerel, veya Script.

    Just zamanında yeniden etkinleştirildikten sonra hata ayıklamayı devre dışı bırakmak için yönetici ayrıcalıkları ile çalışmalıdır.Just-In-Time etkinleştirme hata ayıklama ayarlar kayıt defteri anahtarı ve bu anahtarı değiştirmek için yönetici ayrıcalıkları gerekli.

  5. Tamam düğmesini tıklatın.

Varsayılan olarak, Windows Forms uygulamaları program kurtarıp kurtaramadığını durumunda çalışmaya devam etmesini sağlayan bir üst düzey özel durum işleyicisi vardır.Sonuç olarak bir Windows Forms uygulamasý etkinleştir Just-In-Time hata ayıklama için aşağıdaki ek adımları gerçekleştirmelisiniz.

Bir Windows formu Enable Just-In-Time hata ayıklamak için

  1. Set jitDebugging değeri true de, system.windows.form machine.config bölümü veya Uygulama. exe.config dosyası:

    <configuration>
        <system.windows.forms jitDebugging="true" />
    </configuration>
    
  2. Bir Windows formu C++ uygulamasında da ayarlamanız gerekir DebuggableAttribute .config dosyasında veya kodunuzu.İle derlerseniz /Zi olmadan /Og, derleyici sizin için bu öznitelik ayarlar.Ancak, sürüm optimize yapı hata ayıklamak istiyorsanız, bu kendiniz ayarlamanız gerekir.Aşağıdaki satırı, AssemblyInfo.cpp dosyasını uygulamanızın olduğunuz ekleyerek bunu yapabilirsiniz:

    [assembly:System::Diagnostics::DebuggableAttribute(true, true)]; 
    

    Daha fazla bilgi için bkz. DebuggableAttribute.

Visual Studio artık bilgisayarınızda yüklü olsa bile just-In-Time hata ayıklama hala etkin olabilir.Visual Studio yüklü değilken Just-In-Visual Studio hata ayıklama Time devre dışı bırakılamıyor seçenekleri iletişim kutusu.Bu durumda, Just zamanında Windows kayıt defterini düzenleyerek hata ayıklamayı devre dışı bırakabilirsiniz.

Just zamanında kayıt defterini düzenleyerek hata ayıklamayı devre dışı bırakmak için

  1. Üzerinde Start menü, arama ve çalışma regedit.exe

  2. İçinde Kayıt Defteri Düzenleyicisi'ni penceresinde, bulun ve aşağıdaki kayıt defteri anahtarlarını silin:

    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger

  3. Bilgisayarınızda 64-bit işletim sistemi çalışıyorsa, ayrıca aşağıdaki kayıt defteri anahtarlarını silin:

    • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

    • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\DbgManagedDebugger

  4. Değil yanlışlıkla silme veya diğer kayıt defteri anahtarları değiştirmek için dikkatli olun.

  5. Kapat Kayıt Düzenleyicisi'ni pencere.

Just-In-Time hata ayıklama hataları

Just-In-Time ile ilgili olan aşağıdaki hata iletilerini görebilirsiniz hata ayıklama.

  • <program> Win32 işlenmemiş özel durum oluştu. Yalnızca bu özel durumu hata ayıklama zamanında aşağıdaki hatayla başarısız oldu: oturum açmış olan kullanıcının kilitlenen uygulamada hata ayıklamak için erişim iznine sahip değil.

    Bu iletiyi gösterir Just-In-Time hata ayıklama uygun erişim izniniz yok olduğundan başarısız oldu.Gerekli izinler hakkında daha fazla bilgi için bkz: Remote Debugging Permissions.

  • Kilitlenen işleme eklenemiyor.Belirtilen program Windows veya ms-dos programı değil.

    Başka bir kullanıcı Windows 2000 altında çalışan bir işleme eklemeyi denediğinizde bu hata oluşur.

    Start Visual Studio, bu soruna geçici bir çözüm bulmak için açık İşleme Ekle iletişim kutusundan Debug menü ve bulma işlemi, hata ayıklamak istediğiniz Kullanılabilir işlemleri listesi.İşlemin adını bilmiyorsanız bakmaya Visual Studio Just-In-Time hata ayıklayıcı iletişim ve Not işlem kimliği.Bu süreçte seçin Kullanılabilir işlemleri listelemek ve tıklatın Attach.İçinde Visual Studio Just-In-Time hata ayıklayıcı iletişim kutusunda,'ı No iletişim kutusunu kapatmak için.

  • Hiçbir kullanıcı oturum açtığınızdan, hata ayıklayıcı başlatılamadı.

    Bu hata Just-In-Time oluşur hata ayıklama çalışır Visual Studio bir makinede başlatmak konsolda oturum açmış hiçbir kullanıcı burada.Hiçbir kullanıcı oturum vardır, çünkü hiçbir kullanıcı oturumu Just-In-Time görüntülemek için hata ayıklama iletişim kutusu.

    Bu sorunu gidermek için makineye oturum.

  • Sınıf kayıtlı değil.

    Bu hata, hata ayıklayıcı, büyük olasılıkla bir yükleme sorunu kayıtlı olmayan bir com sýnýfý oluşturmaya çalıştı gösterir.

    Bu sorunu gidermek için Visual Studio yüklemenizi onarmak veya yeniden yüklemek için kurulum diskini kullanın.

Ayrıca bkz.

Başvuru

Just-In-hata ayıklama, Time, Seçenekler iletişim kutusu

Güvenlik Uyarısı: güvenilmeyen bir kullanıcının sahip olduğu bir işleme iliştirme tehlikeli olabilir. Aşağıdaki bilgiler şüpheli görünüyorsa veya çalıştırdığınızdan emin değilseniz, bu işlem eklemeyin

Kavramlar

Hata ayıklayıcı güvenlik

Diğer Kaynaklar

Hata ayıklayıcı Yol Haritası