Salamander WinDBG symbols
Forum rules
Pravidla toho diskuzního fóra jsou k dispozici zde. Navíc prosím dodržujte následující body:
1. Berte prosím na vědomí, že Preview Build verze Salamandera a pluginů mohou obsahovat závažné chyby. Nepoužívejte je v produkčním prostředí.
2. Veškeré chyby, případně připomínky k Preview Build verzím prosím vkládejte do této sekce fóra.
3. Každé nové vlákno označte zkratkou PB a číslem Preview Build verze, například "PB22: neaktivní panel pod kurzorem myši neroluje při naklápění kolečka".
Pravidla toho diskuzního fóra jsou k dispozici zde. Navíc prosím dodržujte následující body:
1. Berte prosím na vědomí, že Preview Build verze Salamandera a pluginů mohou obsahovat závažné chyby. Nepoužívejte je v produkčním prostředí.
2. Veškeré chyby, případně připomínky k Preview Build verzím prosím vkládejte do této sekce fóra.
3. Každé nové vlákno označte zkratkou PB a číslem Preview Build verze, například "PB22: neaktivní panel pod kurzorem myši neroluje při naklápění kolečka".
Salamander WinDBG symbols
Otazka:
Su k dispozicii symboly pre WinDBG? (Visual C++/.NET Program Database File pre lepsiu identifikaciu volanych funkcii. *.pdb)
Su k dispozicii symboly pre WinDBG? (Visual C++/.NET Program Database File pre lepsiu identifikaciu volanych funkcii. *.pdb)
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
Ked aplikacia spadne, Dr.Watson zvycajne spravi drwtsn32.log + user.dmp file.
"C:\Documents and Settings\All Users\Application Data\Microsoft\Dr Watson"
Dump file nasledne importujem do WinDBG (CTRL+D) a analyzujem (!analyze -V). V podstate je to bezny postup. V pripade nejasnosti ma WinDBG este dalsie nastroje.
Za celkom prakticke povazujem pozretie si niekolkych videi od marka Russinovich-a "The Case of unexplained" http://www.microsoft.com/emea/spotlight ... ideoid=722 kde popisuje rozne techniky diagnostiky BSOD, padania aplikacii ci mrznutia systemu.
"C:\Documents and Settings\All Users\Application Data\Microsoft\Dr Watson"
Dump file nasledne importujem do WinDBG (CTRL+D) a analyzujem (!analyze -V). V podstate je to bezny postup. V pripade nejasnosti ma WinDBG este dalsie nastroje.
Za celkom prakticke povazujem pozretie si niekolkych videi od marka Russinovich-a "The Case of unexplained" http://www.microsoft.com/emea/spotlight ... ideoid=722 kde popisuje rozne techniky diagnostiky BSOD, padania aplikacii ci mrznutia systemu.
Shlédl jsem tu prezentaci; zajímavé a poučné
Jen nevím, zda znalost názvů interních částí Salamandera pomůže nějak řešit problémy, na které při testování můžeme narazit. Myslím, že Altap má dobře zavedený debug reporting systém a jedinné co můžeme dohledat navíc je, zda problém souvisí s externí komponentou (například můj popis problému se zipfldr.dll), s konkrétním pluginem nebo s jádrem Salamandera.
Nezapomeňte, že při zatuhnutí Salamandera lze druhou instancí prvního Salamandera shodit a vygenerovat bug report (podobně jako Mark Russinovich ve videu shodil Windows pomocí 2x Ctrl+Scroll Lock). Pokud se chcete hrabat v problému více, tak nástroje prezentované Russinovichem poskytují dostatek informací i bez názvů funkcí laděných kompontent. (například pokud se jedná o špatně ošetřené chybové stavy, tak se toto v Process Exploreru ukáže; ...)
Jen nevím, zda znalost názvů interních částí Salamandera pomůže nějak řešit problémy, na které při testování můžeme narazit. Myslím, že Altap má dobře zavedený debug reporting systém a jedinné co můžeme dohledat navíc je, zda problém souvisí s externí komponentou (například můj popis problému se zipfldr.dll), s konkrétním pluginem nebo s jádrem Salamandera.
Nezapomeňte, že při zatuhnutí Salamandera lze druhou instancí prvního Salamandera shodit a vygenerovat bug report (podobně jako Mark Russinovich ve videu shodil Windows pomocí 2x Ctrl+Scroll Lock). Pokud se chcete hrabat v problému více, tak nástroje prezentované Russinovichem poskytují dostatek informací i bez názvů funkcí laděných kompontent. (například pokud se jedná o špatně ošetřené chybové stavy, tak se toto v Process Exploreru ukáže; ...)
Process Monitor umí zobrazit stack u každé zaznamenané operace.Jan Rysavy wrote:Testujete program v debuggeru nebo kde přijdete do styku s názvy funkcí? Docela mě zajímá metodika, kterou používáte, proto se ptám.
Sám nevím, jestli by to bylo k něčemu dobré, vědět názvy volaných funkcí, ale kdyby jo, tak by se kromě salamandřích taky hodily symboly pro nově vyvíjené pluginy.
Ελληνικά rulez.
Jo a budete se mi smát, až na zásobníku uvidíte toto(*)
CBigVelikost::CallAPI()
CMojeSize::CMojeSize()
CBigVelikost::CBigVelikost()
CMojeSuperWokno::GetVelikost()
CMojeSuperWokno::DoKresleni()
CWoknoBase::OnPaint()
CMojeSuperWokno::OnPaint()
Pokud mám mluvit za sebe, tak třeba některé pády DiskMapy, na které jsem narazil nemají šanci testeři najít ani s názvy funkcí. Pokud uteče nějaký ukazatel, nebo se uvolňuje paměť předčasně, tak se taková chyba projeví později nebo třeba nikdy... To pak chce vzít debuger a hledat, kde k poškození integrity dat došlo.
(Ukázka předčasného "uvolnění prostředků": zkuste v DiskMapě kliknout pravým tlačítkem - otevře se menu - a pak znova kliknout pravým tlačítkem v tom menu... BUM )
(*) Inspirováno skutečnou událostí: Protože se mi nechtělo používat dlouhé slovo Direction, tak v DiskMapě dluohou dobu existoval typ CSmer.
CBigVelikost::CallAPI()
CMojeSize::CMojeSize()
CBigVelikost::CBigVelikost()
CMojeSuperWokno::GetVelikost()
CMojeSuperWokno::DoKresleni()
CWoknoBase::OnPaint()
CMojeSuperWokno::OnPaint()
Pokud mám mluvit za sebe, tak třeba některé pády DiskMapy, na které jsem narazil nemají šanci testeři najít ani s názvy funkcí. Pokud uteče nějaký ukazatel, nebo se uvolňuje paměť předčasně, tak se taková chyba projeví později nebo třeba nikdy... To pak chce vzít debuger a hledat, kde k poškození integrity dat došlo.
(Ukázka předčasného "uvolnění prostředků": zkuste v DiskMapě kliknout pravým tlačítkem - otevře se menu - a pak znova kliknout pravým tlačítkem v tom menu... BUM )
(*) Inspirováno skutečnou událostí: Protože se mi nechtělo používat dlouhé slovo Direction, tak v DiskMapě dluohou dobu existoval typ CSmer.
Last edited by zarevak on 22 Jan 2009, 17:10, edited 1 time in total.
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact: