Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 36247|Odpověď: 2

[Zdroj] vs Co a proč se generují .pdb soubory

[Kopírovat odkaz]
Zveřejněno 16.01.2018 15:43:04 | | |
K čemu slouží soubor PDB?

PDB soubory: Co musí vědět každý vývojář

Příklad scénáře PDB:

.net/c# log4net chybová výjimka nezaznamenává příčinu čísla řádku
http://www.itsvse.com/thread-3928-1-1.html
(Zdroj: Architect)


Co je to PDB soubor?

Většina vývojářů by měla vědět, že soubory PDB se používají k pomoci s laděním softwaru. Ale jak přesně funguje, to možná neznáme. Tento článek popisuje ukládání a obsah souborů PDB. Také popisuje, jak debugger najde PDB soubor odpovídající binay a jak debugger najde zdrojový kód odpovídající binay. Tento článek je určen všem nativním a spravovaným vývojářům.

Než začneme, definujme dva pojmy: soukromá sestava, která označuje sestavení generované na počítači vývojáře; Public build, což znamená build generovaný na public build stroji. Soukromá stavba je relativně jednoduchá, protože PDB a Binay jsou na stejném místě a obvykle máme problémy s veřejnou výstavbou.  

Nejdůležitější věc, kterou by všichni vývojáři měli vědět, je, že "PDB soubory jsou stejně důležité jako zdrojový kód", bez kterého ani nemůžete ladit. Pro veřejnou sestavu musí symbol server uložit všechny PDB a když uživatel nahlásí chybu, debugger automaticky najde odpovídající PDB soubor v binay, a jak Visual Studio, tak Windbg vědí, jak se k symbolovému serveru připoutat. Před uložením PDB a binay na symbol server je také potřeba zaindexovat zdrojový kód běhu PDB, což znamená přiřadit PDB a zdroj.  

Další část předpokládá, že Symbol Server a Source Server Indexing jsou již nastaveny. TFS2010 lze provést stejně jednoduše jako indexování zdrojů a kopírování symbolového serveru pro novou sestavu.

2. Obsah souboru PDB

Oficiálně začal obsah PDB, PDB není veřejně dostupný formát souboru, ale Microsoft poskytuje API, které pomáhá získávat data z PDB.

Nativní C++ PDB obsahuje následující informace:
* veřejné, soukromé a statické funkce adres;
* Název a adresa globální proměnné;
* Názvy parametrů a lokálních proměnných a posuny na zásobníku;
* typové definice třídy, struktury a dat;
* Data o vynechání ukazatele snímku pro procházení nativního zásobníku na x86;
* Název a počet řádků ve zdrojovém kódu;

.NET PDB obsahuje pouze 2 části informací:
* Název souboru a počet řádků ve zdrojovém kódu;
* a název lokální proměnné;
* Všechna ostatní data jsou již zahrnuta v . NET Metadata;  





Předchozí:Visual Studio přidává výkonné editační možnosti Vimu, aby bylo těžké tomu zabránit!
Další:SQL Server odesílající poštu pomocí databází (sp_send_dbmail)
Zveřejněno 16.01.2018 15:44:18 |
 Pronajímatel| Zveřejněno 08.12.2022 21:44:33 |
VS 2022 nastavuje projekt na generování .pdb souboru
https://www.itsvse.com/thread-10397-1-1.html
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com