Dependency Walker - Comment utiliser - Tutoriel

Table des matières:

Dependency Walker - Comment utiliser - Tutoriel
Dependency Walker - Comment utiliser - Tutoriel

Vidéo: Dependency Walker - Comment utiliser - Tutoriel

Vidéo: Dependency Walker - Comment utiliser - Tutoriel
Vidéo: Viva World Series Edition for the 2010 World Cup - YouTube 2024, Mars
Anonim

Parfois, les étapes de dépannage normales ne suffisent pas. Nous devrons peut-être aller au-delà des attentes - plus d'un problème de dépannage judiciaire. Aujourd’hui, je vous parlerai d’un outil qui nous aidera à le faire. Dependency Walker est un outil pour analyser les dépendances d'une application Windows - comme des fonctions, des modules, etc. Il construit un arbre hiérarchique de tous les modules dépendants d'un fichier exe, dll, sys, etc.

Dependency Walker

Dependency Walker peut vous aider à résoudre les erreurs d'application, les erreurs d'enregistrement de fichier, les violations d'accès à la mémoire et les erreurs de page non valides.

Dependency Walker est particulièrement utile si un programme spécifique de votre ordinateur ne se charge pas ou si un service ne démarre pas avec une erreur pointant vers une dll spécifique. Dans ce cas, vous pouvez charger ce programme ou cette dll dans Dependency Walker pour voir quel fichier ne se charge pas ou quel module est à l'origine du problème, puis corrigez-le.
Dependency Walker est particulièrement utile si un programme spécifique de votre ordinateur ne se charge pas ou si un service ne démarre pas avec une erreur pointant vers une dll spécifique. Dans ce cas, vous pouvez charger ce programme ou cette dll dans Dependency Walker pour voir quel fichier ne se charge pas ou quel module est à l'origine du problème, puis corrigez-le.

Le programme ne se contente pas de charger les modules, il recherche également les erreurs potentielles. Selon le fichier d'aide, il exécute les travaux suivants:

  • Détecte les fichiers manquants. Ce sont des fichiers requis en tant que dépendance à un autre module. Un symptôme de ce problème est l'erreur «La bibliothèque de liens dynamiques BAR.DLL est introuvable dans le chemin spécifié…».
  • Détecte les fichiers non valides. Cela inclut les fichiers non compatibles Win32 ou Win64 et les fichiers corrompus. Un symptôme de ce problème est l'erreur «L'application ou la DLL BAR.EXE n'est pas une image Windows valide».
  • Détecte les incompatibilités d'importation / exportation. Vérifie que toutes les fonctions importées par un module sont réellement exportées à partir des modules dépendants. Toutes les fonctions d'importation non résolues sont signalées par une erreur. Un symptôme de ce problème est l'erreur «Le point d'entrée de la procédure FOO n'a pas pu être localisé dans la bibliothèque de liens dynamiques BAR.DLL».
  • Détecte les erreurs de dépendance circulaires. Ceci est une erreur très rare, mais peut se produire avec les fonctions transférées.
  • Détecte les types de CPU incompatibles des modules. Cela se produit si un module conçu pour une CPU tente de charger un module conçu pour une autre CPU.
  • Détecte les incohérences dans les totaux de contrôle en vérifiant les totaux de contrôle des modules pour voir si des modules ont été modifiés après leur construction.
  • Détecte les collisions de modules en mettant en évidence les modules dont le chargement échoue à leur adresse de base préférée.
  • Détecte les échecs d'initialisation du module en suivant les appels aux points d'entrée du module et en recherchant les erreurs.
  • Dependency Walker peut également effectuer un profil d'exécution de votre application pour détecter les modules chargés dynamiquement et les échecs d'initialisation de module. La même vérification d'erreur que celle décrite ci-dessus s'applique également aux modules chargés dynamiquement.

Par exemple, j’aidais un client l’autre jour - elle chargeait Internet Explorer, mais IE n'arrêtait pas de tomber en panne, sans erreur spécifique. Nous avions effectué la plupart des opérations de dépannage de base, telles que la désactivation des add-ons et des barres d’outils, la réinitialisation de IE aux paramètres par défaut, etc., mais cela continuait de planter. Cela signifiait qu'un ou plusieurs fichiers nécessaires au bon fonctionnement d'Internet Explorer créaient un problème. Il est toujours difficile de dépanner de tels cas, mais avec Dependency Walker, nous pouvons voir s’il ya un problème avec l’un des fichiers dépendants.

J'ai donc chargé Internet Explorer dans Dependency Walker.

J'ai ensuite élargi la liste un par un
J'ai ensuite élargi la liste un par un
Ensuite, j'ai parcouru chacun des modules pour voir si je pouvais y trouver quelque chose de suspect. J'ai parcouru le module et j'ai eu la chance de trouver le problème.
Ensuite, j'ai parcouru chacun des modules pour voir si je pouvais y trouver quelque chose de suspect. J'ai parcouru le module et j'ai eu la chance de trouver le problème.
J'ai trouvé que le fichier IEFRAME.dll était manquant. Je suis donc allé remplacer le fichier à partir du DVD d'installation de Windows. Cela a résolu le problème. Maintenant, Internet Explorer ne s'est plus écrasé.
J'ai trouvé que le fichier IEFRAME.dll était manquant. Je suis donc allé remplacer le fichier à partir du DVD d'installation de Windows. Cela a résolu le problème. Maintenant, Internet Explorer ne s'est plus écrasé.

J'espère que cela vous indiquera à quel point il est facile d'utiliser l'outil pour détecter d'éventuelles erreurs de dépendance.

Comment utiliser Dependency Walker

Pour utiliser Dependency Walker afin d’examiner les erreurs, procédez comme suit:

  1. Commencez Dependency Walker
  2. Cliquez sur Ouvrir dans le menu Fichier pour charger le fichier de problème.
  3. Dans le menu Affichage, cliquez sur Démarrer le profilage. La boîte de dialogue Module de profil apparaît
  4. Tapez les commutateurs, arguments de programme et autres options souhaités, puis cliquez sur OK.

Dependency Walker injectera dwinject.dll avant que l'erreur se produise et enregistrera les événements se produisant au moment de l'erreur.

Dependency Walker téléchargez

Vous pouvez télécharger Dependency Walker à partir de ici.

Conseillé: