Windows

Walker εξάρτησης - Πώς να χρησιμοποιήσετε - Εκμάθηση

The human skills we need in an unpredictable world | Margaret Heffernan

The human skills we need in an unpredictable world | Margaret Heffernan

Πίνακας περιεχομένων:

Anonim

Μερικές φορές τα κανονικά βήματα αντιμετώπισης προβλημάτων απλά δεν θα το κόψουν. Μπορεί να χρειαστεί να πάμε πάνω και πέρα ​​- περισσότερο σαν την αντιμετώπιση προβλημάτων από ιατροδικαστές. Σήμερα θα γράψω για ένα εργαλείο που θα μας βοηθήσει να το κάνουμε αυτό. Η εξάρτηση Walker είναι ένα εργαλείο για την ανάλυση των εξαρτήσεων των εφαρμογών των Windows, όπως οι λειτουργίες, οι ενότητες κλπ. Χτίζει ένα ιεραρχικό δέντρο όλων των εξαρτημένων ενοτήτων ενός exe, dll, sys κτλ.

Walker εξάρτησης

Το Walker εξάρτησης μπορεί να σας βοηθήσει στην αντιμετώπιση σφαλμάτων εφαρμογής, σφαλμάτων εγγραφής αρχείων, παραβιάσεων πρόσβασης μνήμης και σφαλμάτων μη έγκυρων σελίδων.

Η εξάρτηση Walker γίνεται ιδιαίτερα χρήσιμη εάν ένα συγκεκριμένο πρόγραμμα σας δεν φορτώνει ή μια υπηρεσία αποτυγχάνει για να ξεκινήσετε με ένα σφάλμα που δείχνει ένα συγκεκριμένο dll. Σε αυτές τις περιπτώσεις, μπορείτε να φορτώσετε το πρόγραμμα ή το dll στο Dependency Walker, για να δείτε ποιο αρχείο δεν μπορεί να φορτωθεί ή ποια μονάδα προκαλεί το πρόβλημα - και στη συνέχεια να το διορθώσετε.

Το πρόγραμμα δεν φορτώνει μόνο τις μονάδες, αλλά ανιχνεύει πιθανά σφάλματα. Σύμφωνα με το αρχείο Βοήθειας, εκτελεί τις ακόλουθες εργασίες:

  • Εντοπισμός αρχείων που λείπουν. Αυτά είναι αρχεία που απαιτούνται ως εξάρτηση από άλλη ενότητα. Σύμπτωμα αυτού του προβλήματος είναι το σφάλμα "Η βιβλιοθήκη δυναμικής σύνδεσης BAR.DLL δεν βρέθηκε στο καθορισμένο μονοπάτι …"
  • Εντοπίζει μη έγκυρα αρχεία. Αυτό περιλαμβάνει αρχεία που δεν είναι συμβατά με Win32 ή Win64 και αρχεία που είναι διεφθαρμένα. Σύμπτωμα αυτού του προβλήματος είναι το σφάλμα "Η εφαρμογή ή το αρχείο DLL BAR.EXE δεν είναι έγκυρη εικόνα των Windows".
  • Εντοπίζει αναντιστοιχίες εισαγωγής / εξαγωγής. Επαληθεύει ότι όλες οι λειτουργίες που εισάγονται από μια μονάδα εξάγονται στην πραγματικότητα από τις εξαρτημένες ενότητες. Όλες οι μη εξουσιοδοτημένες λειτουργίες εισαγωγής επισημαίνονται με σφάλμα. Σύμπτωμα αυτού του προβλήματος είναι το "Το σημείο εισαγωγής της διαδικασίας FOO δεν ήταν δυνατό να εντοπιστεί στη βιβλιοθήκη δυναμικής ζεύξης BAR.DLL"
  • Εντοπίζει σφάλματα κυκλικής εξάρτησης. Αυτό είναι ένα πολύ σπάνιο σφάλμα, αλλά μπορεί να συμβεί με τις προωθούμενες λειτουργίες.
  • Ανιχνεύει τύπους μονάδων CPU που δεν ανταποκρίνονται. Αυτό συμβαίνει εάν μια μονάδα που έχει κατασκευαστεί για μια CPU προσπαθεί να φορτώσει μια μονάδα που έχει κατασκευαστεί για διαφορετική CPU
  • Εντοπίζει ασυνέπειες του αθροίσματος ελέγχου ελέγχοντας τα αθροίσματα ελέγχου στοιχείων για να διαπιστώσει αν έχουν τροποποιηθεί οι μονάδες μετά την κατασκευή τους. επισημαίνοντας τυχόν ενότητες που αποτυγχάνουν να φορτωθούν στην προτιμώμενη διεύθυνση βάσης τους
  • Εντοπίζει αποτυχίες αρχικοποίησης μονάδων παρακολουθώντας κλήσεις σε σημεία εισόδου μονάδων και ψάχνοντας για σφάλματα.
  • Dependency Walker μπορεί επίσης να εκτελέσει ένα προφίλ εκτέλεσης της εφαρμογής σας για να ανιχνεύσει δυναμικά φορτισμένων μονάδων και βλαβών αρχικοποίησης μονάδων. Ο ίδιος έλεγχος σφαλμάτων από ψηλά ισχύει και για τις δυναμικά φορτισμένες μονάδες.
  • Για παράδειγμα, βοηθούσα έναν πελάτη την άλλη μέρα - φορτώνει τον Internet Explorer, αλλά η IE συνέχισε να συντρίβεται χωρίς συγκεκριμένα σφάλματα. Είχαμε κάνει τις περισσότερες από τις βασικές λύσεις αντιμετώπισης προβλημάτων, όπως την απενεργοποίηση των πρόσθετων και των γραμμών εργαλείων, την επαναφορά του IE στην προεπιλεγμένη ρύθμιση κλπ. Αλλά εξακολουθούσε να συντρίβεται. Αυτό σήμαινε ότι ένα ή περισσότερα αρχεία που απαιτούνται για την σωστή λειτουργία του Internet Explorer δημιούργησε ένα πρόβλημα. Είναι πάντα δύσκολο να αντιμετωπίσετε τέτοια περιστατικά, αλλά με το Dependency Walker, μπορούμε να δούμε αν υπάρχει κάποιο πρόβλημα με ένα από τα εξαρτώμενα αρχεία.

Έτσι, φόρτωσα τον Internet Explorer σε Walker εξάρτησης.

Έπειτα, επέκτεινα τη λίστα μία προς μία

Στη συνέχεια, μπήκα μέσα από κάθε ενότητα, για να δω αν μπορούσα να βρω κάτι ύποπτο εκεί. Έκανα κύλιση στη μονάδα και ήταν αρκετά τυχερός για να βρω το πρόβλημα.

Βρήκα ότι το αρχείο IEFRAME.dll λείπει. Έτσι, πήγα και αντικατέστησα το αρχείο από το DVD εγκατάστασης των Windows. Αυτό το λύνει το πρόβλημα. Τώρα ο Internet Explorer δεν συντρίβεται πλέον

Ελπίζω ότι αυτό θα σας πει πόσο εύκολο είναι να χρησιμοποιήσετε το εργαλείο για να βρείτε πιθανά σφάλματα εξάρτησης

Πώς να χρησιμοποιήσετε τον περιπατητή εξάρτησης

Για να χρησιμοποιήσετε το Walker εξάρτησης για να διερευνήσετε σφάλματα, μπορείτε να ακολουθήσετε τα εξής βήματα:

Ξεκινήστε Walker εξάρτησης

  1. Κάντε κλικ στο κουμπί Άνοιγμα στο μενού Αρχείο για να φορτώσετε το αρχείο προβλημάτων
  2. κάντε κλικ στο κουμπί Έναρξη δημιουργίας προφίλ. Το παράθυρο διαλόγου Προφίλ Module εμφανίζεται
  3. Πληκτρολογήστε τυχόν διακόπτες, παραμέτρους προγράμματος, άλλες επιλογές που θέλετε και στη συνέχεια κάντε κλικ στο κουμπί OK.
  4. Walker εξάρτησης θα εγχύσει το dwinject.dll πριν εμφανιστεί το σφάλμα και θα καταγράψει τα γεγονότα που συμβαίνουν τη στιγμή

Μπορείτε να κατεβάσετε Walker εξάρτησης από

εδώ