Aracılığıyla paylaş


WinDbg: Ayarlar, çalışma alanları ve kaydedilen hata ayıklama oturumları

Bitleri inceleyen bir büyüteç içeren WinDbg logosu, .

Bu makalede WinDbg'nin nasıl ayarlanacağı ve yapılandırıldığı açıklanır.

WinDbg iki tür yapılandırma dosyası kullanır:

  • Çalışma alanları tema, pencere düzeni, simge yolları, kaynak yollar ve diğer yapılandırma seçenekleri gibi WinDbg ayarlarınızı depolar. Çalışma alanı dosyaları uzantıyı .xml kullanır ve varsayılan olarak içinde %LOCALAPPDATA%\DBG\Workspacesdepolanır. WinDbg'yi kapattığınızda ayarlar otomatik olarak varsayılan çalışma alanı dosyasına (%LOCALAPPDATA%\DBG\DbgX.xml) kaydedilir.

  • Kaydedilen hata ayıklama oturumları , oturum başına altyapı seçenekleriyle birlikte hedef bağlantı bilgilerini (hangi döküm dosyasının açıldığı veya hangi işlemin eklendiği gibi) depolar. Hata ayıklama oturum dosyaları uzantıyı .debugtarget kullanır ve varsayılan olarak içinde %LOCALAPPDATA%\DBG\Targetsdepolanır. Bu dosyalar, Hata ayıklamayı başlat sayfasındaki Son hedefler listesinde görünür.

Ayarlar

Kaynak ve simge yolu gibi öğeleri ayarlamak için Ayarlar menüsünü kullanın. WinDbg temasını da seçebilirsiniz. Kullanılabilir tema modları şunlardır:

  • Sistem - Windows sistem teması ayarını izler (varsayılan).
  • Işık - Işık temasını kullanır.
  • Koyu - Koyu temayı kullanır.

Genel sekmesini görüntüleyen WinDbg Ayarları menüsünün ekran görüntüsü.

Şu anda altı Ayar iletişim kutusu vardır:

  • Genel
  • Komut penceresi
  • Hata ayıklama ayarları
  • Ayrıştırılmış pencereler
  • Olaylar ve özel durumlar
  • Kaynak penceresi

Yolları ayarlama hakkında daha fazla bilgi için bkz. Windows hata ayıklayıcısı için sembol yolu ve WinDbg'de kaynak kodu hata ayıklama (Klasik).

Çalışma Alanları

Çalışma alanları tema, pencere düzeni, simge yolları, kaynak yollar ve diğer yapılandırma seçenekleri gibi WinDbg ayarlarınızı bir dosyaya kaydeder.

Çalışma alanlarını kaydetme ve yükleme

Çalışma alanlarını Dosya menüsü aracılığıyla yönetebilirsiniz:

  • Çalışma alanını kaydet - Geçerli ayarları etkin çalışma alanı dosyasına kaydeder.
  • Çalışma alanını farklı kaydet - Geçerli ayarları yeni bir çalışma alanı dosyasına kaydeder.
  • Çalışma alanını açma - Önceden kaydedilmiş bir çalışma alanı dosyasındaki ayarları yükler.

Otomatik kaydetme komut satırı seçeneğiyle devre dışı bırakılmadığı sürece, hata ayıklayıcıyı -Q kapattığınızda da ayarlar otomatik olarak kaydedilir.

Çalışma alanı komut satırı seçenekleri

Çalışma alanı davranışını denetlemek için aşağıdaki komut satırı seçeneklerini kullanabilirsiniz:

  • -Q - Ayarların otomatik olarak kaydedilmesini devre dışı bırakır. Ayarlar değişiklikleri yalnızca Dosyamenüsünden Çalışma alanını kaydet veya Çalışma alanını farklı kaydet'i açıkça seçtiğinizde kalıcı olur.
  • -WF SettingsFile - Başlangıçta belirtilen çalışma alanı dosyasındaki ayarları yükler.

Kaydedilen hata ayıklama oturumları

Kaydedilen hata ayıklama oturumları, hedef bağlantı bilgilerinizi ve oturum başına altyapı seçeneklerini depolar. Hata ayıklama oturum dosyaları uzantıyı .debugtarget kullanır ve varsayılan olarak içinde %LOCALAPPDATA%\DBG\Targetsdepolanır.

Hata ayıklama oturumlarını kaydetme ve yükleme

Hata ayıklama oturumlarını Dosya menüsü ve komut satırı aracılığıyla yönetebilirsiniz:

  • Hata ayıklama oturumunu kaydet - Geçerli hedef bağlantı bilgilerini bir .debugtarget dosyaya kaydeder. Bu seçenek yalnızca hata ayıklama hedefi etkin olduğunda kullanılabilir.
  • Son hedefler - Hata ayıklamayı başlat sayfasında, yeniden yüklemek için Son hedefler listesinden önceden kaydedilmiş bir hata ayıklama oturumu seçin.
  • -loadSession - Kaydedilmiş bir hata ayıklama oturumu yapılandırma dosyasını komut satırından yükler.

Oturum ayarlarında hata ayıklama

Hedef bağlantı bilgilerine ek olarak, aşağıdaki ayarlar kaydedilen hata ayıklama oturum dosyasında (.debugtarget dosya uzantısı) depolanır.

Genel ayarlar

Uyarı

Bu liste ve biçim son değildir ve değiştirilebilir.

Ayarlar Varsayılan Açıklama
FinalBreak true ise true, son kesme noktasını (-g komut satırı seçeneği) yoksayar.
SourceDebugging true Kaynak veya derleme modu arasında geçiş yapar.
DebugChildProcesses false (Yalnızca kullanıcı modu.) ise true, hedef uygulama tarafından başlatılan alt işlemlerde hata ayıklar (-o komut satırı seçeneği).
Noninvasive false Noninvasive attach komut satırı seçeneğini (-pv) belirtir.
NoDebugHeap false Hata ayıklama yığınının kullanılmaması gerektiğini belirtir (-hd komut satırı seçeneği).
Verbose false Ayrıntılı mod açıldığında, bazı görüntüleme komutları (yazmaç dökümü gibi) için daha ayrıntılı çıkış (-v komut satırı seçeneği) üretir.
Elevate - WinDbg tarafından dahili olarak kullanılır. Değiştirmeyin.
Restartable - WinDbg tarafından dahili olarak kullanılır. Değiştirmeyin.
UseImplicitCommandLine false Gizli komut satırını (-cimp komut satırı seçeneği) kullanır. Bu ayar, hata ayıklayıcıyı çalıştırılacak açık bir işlem yerine örtük bir komut satırıyla başlatır.

Komut satırı seçenekleri hakkında daha fazla bilgi için bkz. WinDbg komut satırı seçenekleri.

Sembol ayarları

Ayarlar Varsayılan Açıklama
SymbolOptionsOverride 0 Bu açık simge seçenek maskesi tek bir onaltılık sayı şeklindedir.
ShouldOverrideSymbolOptions false olarak trueayarlanırsa, bu tabloda listelenen tüm simge seçeneklerini yukarıdaki tabloda açıklanan sağlanan simge seçeneği maskesiyle geçersiz kılar.
SymOptExactSymbols false Bu seçenek, hata ayıklayıcının tüm sembol dosyalarının katı bir değerlendirmesini gerçekleştirmesine neden olur.
SymOptFailCriticalErrors false Bu simge seçeneği, dosya erişim hatası iletişim kutularının gösterilmemesine neden olur.
SymOptIgnoreCvRec false Bu seçenek, sembolleri ararken sembol işleyicisinin yüklenen görüntü başlığındaki CV kaydını yoksaymasına neden olur.
SymOptIgnoreNtSympath false Bu seçenek, hata ayıklayıcının sembol yolu ve yürütülebilir görüntü yolu için ortam değişkeni ayarlarını yoksaymasına neden olur.
SymOptNoCpp false Bu simge seçeneği C++ çeviriyi kapatır. Bu simge seçeneği ayarlandığında, __ tüm sembollerde :: değiştirilir.
SymOptNoUnqualifiedLoads false Bu simge seçeneği, sembol işleyicisinin modülleri otomatik yüklemesini devre dışı bırakır. Bu seçenek ayarlandığında, hata ayıklayıcısı bir simgeyi eşleştirmeyi dener. Yalnızca önceden yüklenmiş olan modülleri arar.
SymOptAutoPublics false Bu simge seçeneği, DbgHelp'in .pdb dosyasındaki genel simge tablosunda yalnızca son çare olarak aramasına neden olur. Özel simge verisinde arama yaparken herhangi bir eşleşme bulunursa, ortak simgeler aranmıyor. Bu ayar sembol arama hızını artırır.
SymOptDebug false Bu simge seçeneği gürültülü simge yüklemeyi açar. Bu ayar, hata ayıklayıcıya sembol aramasıyla ilgili bilgileri görüntülemesini sağlar.

Simge seçenekleri hakkında daha fazla bilgi için bkz. Sembol seçenekleri.

Oturum XML dosyasında hata ayıklama

Hata ayıklama oturumu hedef bağlantı bilgileri dosya uzantısıyla .debugtarget XML biçiminde depolanır.

Aşağıdaki dosyada örnek bir hata ayıklama oturumu yapılandırma dosyası gösterilmektedir.

<?xml version="1.0" encoding="utf-8"?>
<TargetConfig Name="C:\paint.dmp" LastUsed="2017-08-03T21:34:20.1013837Z">
  <EngineConfig />
  <EngineOptions>
    <Property name="FinalBreak" value="true" />
    <Property name="SourceDebugging" value="true" />
    <Property name="DebugChildProcesses" value="false" />
    <Property name="Noninvasive" value="false" />
    <Property name="NoDebugHeap" value="false" />
    <Property name="Verbose" value="false" />
    <Property name="SymbolOptionsOverride" value="0" />
    <Property name="ShouldOverrideSymbolOptions" value="false" />
    <Property name="SymOptExactSymbols" value="false" />
    <Property name="SymOptFailCriticalErrors" value="false" />
    <Property name="SymOptIgnoreCvRec" value="false" />
    <Property name="SymOptIgnoreNtSympath" value="false" />
    <Property name="SymOptNoCpp" value="false" />
    <Property name="SymOptNoUnqualifiedLoads" value="false" />
    <Property name="SymOptAutoPublics" value="false" />
    <Property name="SymOptDebug" value="false" />
    <Property name="Elevate" value="false" />
    <Property name="Restartable" value="true" />
    <Property name="UseImplicitCommandLine" value="false" />
  </EngineOptions>
  <TargetOptions>
    <Option name="OpenDump">
      <Property name="DumpPath" value="C:\paint.dmp" />
    </Option>
  </TargetOptions>
</TargetConfig>

WinDbg'ye daha fazla özellik eklendikçe bu dosya biçimi gelişmeye devam eder.