Dependency Walker - Ako používať - Výučba

Obsah:

Dependency Walker - Ako používať - Výučba
Dependency Walker - Ako používať - Výučba

Video: Dependency Walker - Ako používať - Výučba

Video: Dependency Walker - Ako používať - Výučba
Video: Robert Waldinger: What makes a good life? Lessons from the longest study on happiness | TED - YouTube 2024, Smieť
Anonim

Niekedy sa bežné kroky na riešenie problémov jednoducho neodstránia. Možno budeme musieť ísť nad a za - viac ako forenzné riešenie problémov. Dnes napíšem o nástroji, ktorý nám pomôže urobiť to. Dependency Walker je nástroj na analýzu závislosti aplikácií Windows, ako sú funkcie, moduly atď. Vytvára hierarchický strom všetkých závislých modulov exe, dll, sys atď.

Dependency Walker

Dependency Walker vám môže pomôcť pri odstraňovaní problémov s aplikáciami, chybami pri registrácii súborov, porušením prístupu k pamäti a neplatnými chybami stránok.

Dependency Walker sa stáva obzvlášť užitočným, ak sa váš špecifický program nenahrádza, alebo sa služba nespustí s chybou smerujúcou na konkrétnu dll. V takýchto prípadoch môžete tento program alebo dll načítať v službe Dependency Walker, zistiť, ktorý súbor sa nedá načítať alebo aký modul spôsobuje problém - a potom ho opraviť.
Dependency Walker sa stáva obzvlášť užitočným, ak sa váš špecifický program nenahrádza, alebo sa služba nespustí s chybou smerujúcou na konkrétnu dll. V takýchto prípadoch môžete tento program alebo dll načítať v službe Dependency Walker, zistiť, ktorý súbor sa nedá načítať alebo aký modul spôsobuje problém - a potom ho opraviť.

Program nie je iba načítanie modulov, ale tiež kontroluje možné chyby. Podľa súboru Pomocníka vykonáva tieto úlohy:

  • Zisťuje chýbajúce súbory. Sú to súbory, ktoré sú potrebné ako závislosť na inom module. Príznakom tohto problému je chyba "Knižnica dynamického prepojenia BAR.DLL sa nepodarilo nájsť v zadanej ceste …" chyba.
  • Zistí neplatné súbory. Patria sem aj súbory, ktoré nie sú kompatibilné s Win32 alebo Win64 a sú poškodené. Príznakom tohto problému je chyba "Aplikácia alebo DLL BAR.EXE nie je platný obraz systému Windows".
  • Rozpozná nesprávne importy / exporty. Overuje, či sú všetky funkcie importované modulom skutočne exportované zo závislých modulov. Všetky nevyriešené funkcie importu sú označené chybou. Symptómom tohto problému je "Vstupný bod procedúry FOO nemohol byť umiestnený v knižnici dynamickej linky BAR.DLL" chyba.
  • Zisťuje chyby kruhovou závislosťou. Toto je veľmi zriedkavá chyba, ale môže sa vyskytnúť pri presmerovaných funkciách.
  • Zisťuje nesprávne typy modulov CPU. K tomu dochádza, ak sa modul postavený pre jeden procesor pokúša načítať modul postavený pre iný procesor.
  • Zistí nekonzistenciu kontrolného súčtu overovaním kontrolných súčtov modulov, aby zistili, či boli moduly po ich zostavení upravené.
  • Deteguje kolízie modulov zvýraznením všetkých modulov, ktoré sa nedajú načítať na ich prednostnej bázickej adrese.
  • Zistí poruchy inicializácie modulov sledovaním hovorov do vstupných bodov modulov a hľadaním chýb.
  • Dependency Walker môže tiež vykonávať run-time profil aplikácie na detekciu dynamicky nabitých modulov a porúch inicializácie modulov. Rovnaká kontrola chýb zhora platí aj pre dynamicky načítané moduly.

Pomáhala som napríklad klientovi na druhý deň - načítavala Internet Explorer, ale IE sa neustále zrútila bez špecifických chýb. Urobili sme väčšinu základných riešení problémov, ako je vypnutie doplnkov a panelov nástrojov, resetovanie IE na predvolené nastavenie atď. Napriek tomu však stále dochádza k zrúteniu. To znamená, že jeden alebo viac súborov potrebných na správne fungovanie programu Internet Explorer spôsobuje problém. Je vždy ťažké riešiť takéto prípady, ale s Dependency Walker, môžeme vidieť, či niečo nie je v poriadku s jedným zo závislých súborov.

Takže som zaviedol program Internet Explorer v službe Dependency Walker.

Ďalej som rozšíril zoznam jeden po druhom
Ďalej som rozšíril zoznam jeden po druhom
Potom som prešiel cez každý z modulov, aby som zistil, či by som tu mohol nájsť niečo podozrivé. Prešiel som cez modul a mal šťastie, aby som našiel problém.
Potom som prešiel cez každý z modulov, aby som zistil, či by som tu mohol nájsť niečo podozrivé. Prešiel som cez modul a mal šťastie, aby som našiel problém.
Zistil som, že súbor IEFRAME.dll chýba. Tak som išiel a nahradil súbor z inštalačného DVD systému Windows. To vyriešilo problém. Aplikácia Internet Explorer už nie je havarovaná.
Zistil som, že súbor IEFRAME.dll chýba. Tak som išiel a nahradil súbor z inštalačného DVD systému Windows. To vyriešilo problém. Aplikácia Internet Explorer už nie je havarovaná.

Dúfam, že vám to povie, aké ľahké je použiť nástroj na zistenie možných chýb závislosti.

Ako používať Dependency Walker

Ak chcete používať službu Dependency Walker na vyšetrenie chýb, môžete postupovať podľa týchto krokov:

  1. Začnite Dependency Walker
  2. Kliknutím na položku Otvoriť v ponuke Súbor sa načíta problémový súbor
  3. V ponuke Zobraziť kliknite na položku Spustiť profilovanie. Zobrazí sa dialógové okno modulu profilu
  4. Zadajte akékoľvek prepínače, argumenty programu, ďalšie požadované možnosti a potom kliknite na tlačidlo OK.

Dependency Walker pred doručením dwject.dll injektuje dwinject.dll a zaznamená udalosti, ku ktorým došlo v čase chyby.

Závislosť Walker stiahnuť

Môžete si stiahnuť Dependency Walker z tu.

Odporúča: