Popis.PDB soubory a.Soubory DBG

Překlady článku Překlady článku
ID článku: 121366 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Na.Rozšíření PDB zkratka "databáze programu." Obsahuje nový formát pro ukládání informace o ladění, který byl zaveden v jazyce C++ verze 1.0. V budoucnu.Soubor PDB bude uchovávat také jiné projektu informace o stavu. Jedním z nejdůležitějších podněty pro změnu formát byl Povolit přírůstkové propojení ladicí verze programů, Změna poprvé zaveden v aplikaci Visual C++ verze 2.0.

Na.Rozšíření DBG zkratka "ladění". Na.Soubory DBG vytvořené pomocí 32bitové NT toolset jsou ve formátu Portable spustitelný soubor (PE). Obsahují oddíly s COFF FPO a v některých případech znakových souborů Codeview informace. Ladicí program Visual C++ integrované lze číst.Soubory DBG Tento formát však ignoruje oddíly symbol COFF a hledá Informace o znakových souborů Codeview.

Pokud potřebujete zjistit, jaký symbol informací obsažených v.DBG soubor, můžete na příkazovém řádku zadejte následující:
Dumpbin sample.dbg/symbol.
				
Poznámka: Možná bude nutné zahrnout adresářů pro Dumpbin.exe cestu a MSdis100.dll:
Path=%Path%;C:\Program Files\DevStudio\VC\bin;C:\Msssdk\bin
				
Další informace o DUMPBIN klepnutím na následující číslo článku databáze Microsoft Knowledge Base:
177429Příklady výstupu DUMPBIN

Další informace

Na.PDB souborů.

Při předchozích, 16bitové verze Visual C++ používá.PDB soubory, ladicí informace uložené v nich byla připojena na konec.EXE nebo .Soubor knihovny DLL vytvořeném propojovacím programem. Ve verzích Visual C++, které bylo uvedeno výše, aby byly upraveny vytvořeném propojovacím a integrovaného ladicího nástroje.PDB soubory, které má být použit přímo během ladění se tím podstatné množství práce linker a také vynechání náročný limit CVPACK typů 64 kB.

Další informace o omezeních CVPACK klepnutím na následující číslo článku databáze Microsoft Knowledge Base:
112335Chyba: CK1020 nebo CK4009 při informace o typu větší než 64 kB
Ve výchozím nastavení se při vytváření projektů, které jsou generovány vizuální Workbench Kompilátor přepínač /Fd slouží k přejmenování.Soubor PDB <project>.PDB. Proto bude mít pouze jednu.Soubor PDB pro celý projekt. </project>

Spustíte-li makefiles, které nebyly generovány vizuální Workbench, a /Zi se nepoužívá /Fd, které skončí se dvěma.PDB soubory:
  • VCx0.PDB (kde "x" odkazuje na hlavní verze odpovídající Visual C++, "2" nebo "4"), který ukládá všechny informace o ladění pro jednotlivce.OBJ soubory. Je umístěn v adresáři kde makefile projektu nachází.
  • <project>.PDB, který ukládá všechny informace o ladění pro výsledný .Soubor EXE. Je umístěn v podadresáři \WINDEBUG.</project>
Proč dva soubory? Po spuštění kompilátor neví, název .Soubor EXE, do kterého.OBJ soubory budou spojeny, tak kompilátor nelze Vložte informace do <project>.PDB. Dva soubory ukládat různé informace. Pokaždé, když při kompilaci.Soubor OBJ, kompilátor sloučí ladicí informace do VCX0.PDB. Nevystavuje symbol informace například definice funkce. Pouze vloží informace týkající se typů. Výhodou tohoto je, že pokud každý zdrojový soubor obsahuje společné záhlaví soubory, jako například <windows.h>, funkce TypeDef z těchto záhlaví jsou pouze uloženy jednou, spíše než v každé.OBJ soubor. </windows.h></project>

Spustíte-li linker, vytvoří se <project>.PDB, které drží ladicí informace o projektu.Soubor EXE. Všechny ladění informace, včetně funkce prototypy a všechno ostatní, je umístěn. do <project>.PDB, nikoli pouze typ údajů v VCX0.PDB. Na dva druhy z.PDB soubory sdílet se stejnou příponou, protože jsou architektonicky podobné; obě Povolit přírůstkové aktualizace. Nicméně skutečně ukládají různé informace. </project></project>

Nové ladicího programu jazyka Visual C++, používá <project>.Soubor PDB vytvořené Propojovač přímo a vloží absolutní cesta k.PDB v.EXE nebo .Soubor knihovny DLL. Pokud debugger nemůže najít.Soubor PDB na tomto místě nebo pokud Cesta je neplatná (Pokud například byl projekt přesunut do jiného počítač), ladicí program vyhledá jej v aktuálním adresáři. </project>

Na.Soubory DBG

Můžete také použít ladicí program Visual C++ integrované.Soubory DBG stejně dlouhý jako vyrobených z binárního obsahující znakových souborů Codeview formátu výstupu ladění. Tyto funkce jsou užitečné pro ladění zdrojového kódu není k dispozici. Dokonce i bez zdroje.Soubory DBG umožňují nastavit zarážky na funkce, sledování proměnných a zobrazit v zásobníku volání funkce. Jsou také požadováno pro ladění OLE RPC.

Jeden výstražné potřeba zdůraznit: při práci se symboly z.DBG soubor, je nutné použít plně dekorovanými názvy. Například můžete nastavit Zarážka na volání funkce sndPlaySound systému Windows by jako umístění zadejte _sndPlaySoundA@8.

K dispozici jsou ve skutečnosti dvě.DBG formátů souborů. Má existovaly v původním formátu určitou dobu na světě 16 bitů. Například protože formát.COM soubory je jednoduchý binární obraz do paměti načteny, ladění znakových souborů Codeview informace nelze přidat na konec souboru, protože soubor velikost by mohly přesáhnout limit 64 kB /.COM soubor. Proto symbolické informace byla dána místo do zvláštní.DBG soubor, který měl pouze Znakových souborů Codeview informace. Na.Soubory DBG může být také generovány CVPACK spuštěné.Pomocí možnosti /strip souboru EXE.

Pro 32bitové.EXEs, Visual C++ verze 2.x a symbol 4.x debugger Popisovač nepodporuje čtení ve starém formátu. Místo toho přečte formát použitý v v systému Windows NT.Soubory DBG dodávané s jeho systémem.Soubory DLL. Tyto.Soubory DBG jsou ve formátu Portable spustitelný soubor (PE) a obsahují oddíly s COFF FPO a v některých případech symbolické znakových souborů Codeview informace. Načte nový ladicího programu jazyka Visual C++.Soubory DBG v tomto formátu pouze. Kromě toho používala pouze informace o znakových souborů Codeview, ignoruje ostatní oddíly symbol.

Je možné pásy ladicích informací ze souboru PE a uložte jej do .DBG soubor pro použití ladicí programy. Tento postup ladicí program potřebuje vědět, zda chcete najít informace o ladění v samostatném souboru, nebo Ne a informace již byly zda odkorněno ze souboru, nebo ne. Jedna metoda být debugger vyhledávat spustitelného souboru, který hledáte informace o ladění. Však uložit ladicí program z museli hledat Soubor byl vymyšlený charakteristické pole souboru (IMAGE_FILE_DEBUG_STRIPPED) který označuje, že soubor má bylo odkorněno. Ladicí programy můžete vyhledat tento pole v záhlaví souboru PE rychle určit, zda ladění informace jsou v souboru, nebo ne.

Generování.DBG souboru v tomto formátu můžete použít REBASE.EXE, který je s Win32 SDK. Naleznete v dokumentaci k sadě Win32 SDK. Další podrobnosti.

Při sestavení prodejní verze systému Windows NT, symboly ladění, budou odstraněny z binární soubory systému, ovladače a uložené v samostatném.Soubory DBG. To se provádí protože tyto můžete použít ladicí program jádra systému Windows NT.Soubory DBG a poskytnout symboly ladění i pro optimalizované ovladače. Nezapomeňte však, že Visual C++ integrovaného ladicího programu není navržen pro chráněný režim ladění kód pro jádro.

Symbol soubory systému Windows NT můžete nalézt v podadresáři ladění \SUPPORT adresáře na disku CD-ROM prodejní verze systému Windows NT. Musí být tyto soubory Kopírovat z disku CD-ROM na pevný disk. Pro ladění uživatelského režimu na cílový počítač debugger.DBG symboly musí být v systému Windows NT \<winnt>\SYMBOLS adresář cílového systému (<winnt> je adresář Pokud systém Windows NT je nainstalován). Nainstaluje nový instalační program Visual C++ "Nastavení symbolů systému NT" ikonu ve skupině programů. Můžete ji použít automaticky zkopírovat.Soubory DBG z disku CD-ROM systému Windows NT Workstation diskové struktury správný adresář na pevném disku. Tato metoda protože není funkční pro disk CD-ROM systému Windows NT Server 4.0.Soubory DBG jsou uloženy v komprimovaném formátu. </winnt></winnt>

Ladění jádra, umístěte.Soubory DBG do stromu pod symboly určené proměnnou prostředí _NT_SYMBOL_PATH (pro adresář například C:\DEBUG\SYMBOLS). Ladění jádra je možné s minimální sadou symboly obsahující symboly pro všechny ovladače (*.SYS) v Adresář SYMBOLS\SYS a symboly pro soubor NTOSKRNL.EXE a vrstvy HAL.Knihovna DLL v Adresáře SYMBOLS\EXE a SYMBOLS\DLL, resp.. Další informace ladění jádra, naleznete v diskusi o ladění jádra v systém Windows NT DDK Programmer's Guide.

Když je teoreticky možné převést z.Soubor PDB zpět .Soubor DBG není trivial úkolu. V současné době víme, že žádné takové nástroje. Pokud jsme slyšet takové nástroje, bude tento článek aktualizován Microsoft Znalostní báze Knowledge Base.

Vlastnosti

ID článku: 121366 - Poslední aktualizace: 23. dubna 2011 - Revize: 5.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual C++ 2.1
  • Microsoft Visual C++ 4.0 Standard Edition
Klíčová slova: 
kbbug kbdebug kbide kbinfo kbmt KB121366 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:121366
Právní omezení pro obsah znalostní báze týkající se produktů, jejichž podpora byla ukončena
Tento článek byl napsán o produktech, pro které společnost Microsoft již neposkytuje nadále podporu. Článek je tedy nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com