Beroende Walker - Ett avancerat felsökningsverktyg

  • Walter Wilkinson
  • 0
  • 2411
  • 89

Ibland klarar vanliga felsökningssteg bara inte det. Vi kan behöva gå utöver - mer som kriminalteknisk felsökning. Idag skriver jag om ett verktyg som hjälper oss att göra det.  Beroende Walker är ett verktyg för att analysera beroenden i en Windows-applikation - som funktioner, moduler etc. Det bygger ett hierarkiskt träd av alla beroende moduler i en exe, dll, sys, etc..

Beroende Walker

Beroende Walker kan hjälpa dig att felsöka applikationsfel, filregistreringsfel, brott i minnesåtkomst och ogiltiga sidfel.

Beroende Walker blir särskilt användbart om ett specifikt program inte laddas eller om en tjänst inte startar med ett fel som pekar på en specifik dll. I sådana fall kan du ladda det programmet eller dll i Dependency Walker, för att se vilken fil som inte laddas eller vilken modul som orsakar problemet - och sedan fixa den.

Programmet laddar inte bara modulerna utan söker också efter potentiella fel. Enligt hjälpfilen utför den följande jobb:

  • Upptäcker saknade filer. Det här är filer som krävs som ett beroende av en annan modul. Ett symptom på detta problem är "Det dynamiska länkbiblioteket BAR.DLL kunde inte hittas i den angivna sökvägen ..." -felet.
  • Upptäcker ogiltiga filer. Detta inkluderar filer som inte är Win32- eller Win64-kompatibla och filer som är skadade. Ett symptom på detta problem är felet ”Applikationen eller DLL BAR.EXE är inte ett giltigt Windows-avbildar”.
  • Upptäcker felaktigheter i import / export. Verifierar att alla funktioner som importeras av en modul faktiskt exporteras från beroende moduler. Alla olösta importfunktioner flaggas med ett fel. Ett symptom på detta problem är felet "FTP för procedurinmatning kunde inte hittas i det dynamiska länkbiblioteket BAR.DLL".
  • Upptäcker cirkulära beroendefel. Detta är ett mycket sällsynt fel, men kan uppstå vid vidarebefordrade funktioner.
  • Upptäcker felinställda CPU-typer av moduler. Detta inträffar om en modul byggd för en CPU försöker ladda en modul byggd för en annan CPU.
  • Upptäcker inkonsekvenser i kontrollsumma genom att verifiera modulkontrollsumma för att se om några moduler har ändrats efter att de byggts.
  • Upptäcker modulkollisioner genom att markera alla moduler som inte laddas på deras önskade basadress.
  • Upptäcker modulinitieringsfel genom att spåra samtal till modulens ingångspunkter och leta efter fel.
  • Beroende Walker kan också utföra en körtidsprofil för din applikation för att upptäcka dynamiskt laddade moduler och modulinitieringsfel. Samma felkontroll från ovan gäller också dynamiskt laddade moduler.

Till exempel hjälpte jag en klient häromdagen - hon laddade Internet Explorer, men IE kraschade utan några specifika fel. Vi hade gjort de flesta av de grundläggande felsökningarna som att inaktivera tillägg och verktygsfält, återställa IE till standardinställning osv. Men fortfarande kraschade det. Detta innebar att en eller flera filer som krävs för att Internet Explorer ska köra ordentligt skapade ett problem. Det är alltid svårt att felsöka sådana fall men med Dependency Walker kan vi se om något är fel med en av de beroende filerna.

Så jag laddade Internet Explorer i Dependency Walker.

Därefter utvidgade jag listan en efter en

Sedan gick jag igenom var och en av modulerna för att se om jag kunde hitta något misstänkt där. Jag bläddrade igenom modulen och hade turen att hitta problemet.

Jag hittade att filen IEFRAME.dll saknades. Så jag gick och ersatte filen från Windows installations-DVD. Det löste problemet. Nu kraschade inte längre Internet Explorer.

Jag hoppas att det här kommer att berätta hur lätt det är att använda verktyget för att ta reda på eventuella beroendefel.

Hur man använder Dependency Walker

Om du vill använda Dependency Walker för att undersöka fel kan du följa dessa steg:

  1. Starta beroende Walker
  2. Klicka på Öppna på Arkiv-menyn för att ladda problemfilen
  3. Klicka på Starta profilering i Visa-menyn. Dialogrutan Profilmodul visas
  4. Skriv eventuella switchar, programargument, andra alternativ du vill och klicka sedan på OK.

Beroende Walker kommer att injicera dwinject.dll innan felet inträffar och loggar händelserna som inträffade vid felet.

Dependency Walker nedladdning

Ladda ner PC Repair Tool för att snabbt hitta och fixa Windows-fel automatiskt

Du kan ladda ner Dependency Walker från här.




Ingen har kommenterat den här artikeln än.

De mest användbara recensionerna, nyheterna och guiderna från teknikvärlden. Massor av information du behöver
Artiklar om ny teknik. Kort och tydligt om de viktigaste sakerna i den moderna världen. Användbara guider och nyheter, detaljerade recensioner och förklaringar