lm (Liste des modules chargés)

La commande lm affiche les modules chargés spécifiés. La sortie inclut le status et le chemin d’accès du module.

lm Options [a Address] [m Pattern | M Pattern]

Paramètres

Options

Toute combinaison des options suivantes :

D

Affiche la sortie à l’aide du langage de balisage du débogueur.

o

Affiche uniquement les modules chargés.

l

Affiche uniquement les modules dont les informations de symbole ont été chargées.

v

Provoque l’affichage détaillé. L’affichage comprend le nom du fichier de symboles, le nom du fichier image, les informations de somme de contrôle, les informations de version, les horodatages, les horodatages et des informations sur le fait que le module est du code managé (CLR). Ces informations ne s’affichent pas si les en-têtes pertinents sont manquants ou paginés.

u

(Mode noyau uniquement) Affiche uniquement les informations de symbole en mode utilisateur.

k

(Mode noyau uniquement) Affiche uniquement les informations de symbole en mode noyau.

e

Affiche uniquement les modules qui ont un problème de symbole. Ces symboles incluent des modules qui n’ont pas de symboles et des modules dont le symbole status est C, T, #, M ou Export. Pour plus d’informations sur ces notations, consultez Abréviations d’état des symboles.

c

Affiche les données de somme de contrôle.

1m

Réduit la sortie de sorte que rien n’est inclus à l’exception des noms des modules. Cette option est utile si vous utilisez le jeton .foreach pour diriger la sortie de commande vers l’entrée d’une autre commande.

sm

Trie l’affichage par nom de module et non par adresse de début.

En outre, vous ne pouvez inclure qu’une seule des options suivantes. Si vous n’incluez aucune de ces options, l’affichage inclut le nom du fichier de symboles.

i

Affiche le nom du fichier image.

f
Affiche le chemin d’accès complet à l’image. (Ce chemin correspond toujours au chemin affiché dans la notification de chargement initiale, sauf si vous avez émis une commande .reload -s .) Lorsque vous utilisez f, les informations de type de symbole ne s’affichent pas.

n

Affiche le nom de l’image. Lorsque vous utilisez n, les informations de type de symbole ne s’affichent pas.

p
Affiche le nom de l’image mappée. Lorsque vous utilisez p, les informations de type de symbole ne s’affichent pas.

t

Affiche les horodatages du fichier. Lorsque vous utilisez t, les informations de type de symbole ne s’affichent pas.

une adresse

Spécifie une adresse contenue dans ce module. Seul le module qui contient cette adresse s’affiche. Si Address contient une expression, elle doit être placée entre parenthèses.

Modèle m

Spécifie un modèle auquel le nom du module doit correspondre. Le modèle peut contenir divers caractères génériques et spécificateurs. Pour plus d’informations sur la syntaxe de ces informations, consultez Syntaxe générique de chaîne.

Dans la plupart des cas, le nom du module est le nom de fichier sans l’extension de nom de fichier. Par exemple, si vous souhaitez afficher des informations sur le pilote Flpydisk.sys, utilisez la commande lm mflpydisk, et non lm mflpydisk.sys. Dans certains cas, le nom du module diffère considérablement du nom du fichier.

Modèle M

Spécifie un modèle auquel le chemin d’accès de l’image doit correspondre. Le modèle peut contenir divers caractères génériques et spécificateurs. Pour plus d’informations sur la syntaxe de ces informations, consultez Syntaxe générique de chaîne.

Environnement

Élément Description
Modes Mode utilisateur, mode noyau
Targets Vidage en direct sur incident
Plateformes Tous

Remarques

La commande lm répertorie tous les modules et les status de symboles pour chaque module.

Windows gère une liste de modules déchargée pour les processus en mode utilisateur. Lorsque vous déboguez un processus en mode utilisateur ou un fichier de vidage, la commande lm affiche également ces modules déchargés.

Les modules affichés dépendent de la façon dont vous déboguez, par exemple le mode utilisateur ou noyau, et du contexte spécifique que vous examinez. Pour plus d’informations sur le contexte de processus et d’autres paramètres de contexte, consultez Modification des contextes et Contrôle des processus et des threads.

Cette commande affiche plusieurs colonnes ou champs, chacun avec un titre différent. Certains de ces titres ont des significations spécifiques :

  • nom de module est généralement le nom de fichier sans l’extension de nom de fichier. Dans certains cas, le nom du module diffère considérablement du nom du fichier.

  • Le type de symbole suit immédiatement le nom du module. Cette colonne n’est pas étiquetée. Pour plus d’informations sur les différentes valeurs status, consultez Abréviations d’état des symboles. Si vous avez chargé des symboles, le nom du fichier de symboles suit cette colonne.

  • La première adresse du module s’affiche comme début. La première adresse après la fin du module s’affiche en tant que fin. Par exemple, si le début est « faab4000 » et la fin est « faab8000 », le module s’étend de 0xFAAB4000 à 0xFAAB7FFF, inclus.

  • lmv uniquement : la colonne du chemin d’accès de l’image affiche le nom du fichier exécutable, y compris l’extension de nom de fichier. En règle générale, le chemin d’accès complet est inclus en mode utilisateur, mais pas en mode noyau.

  • lmv uniquement : la valeur du fichier image de symbole chargé est identique au nom de l’image, sauf si des symboles Microsoft CodeView sont présents.

  • lmv uniquement : la valeur du fichier d’image mémoire mappée n’est généralement pas utilisée. Si le débogueur mappage un fichier image (par exemple, pendant le débogage minidump), cette valeur est le nom de l’image mappée.

L’exemple de code suivant montre la commande lm à l’aide des options m et s*, de sorte que seuls les modules commençant par « s » s’affichent.

kd> lm m s*
start    end        module name
f9f73000 f9f7fd80   sysaudio     (deferred)                 
fa04b000 fa09b400   srv          (deferred)                 
faab7000 faac8500   sr           (deferred)                 
facac000 facbae00   serial       (deferred)                 
fb008000 fb00ba80   serenum      e:\mysymbols\SereEnum.pdb\.......
fb24f000 fb250000   swenum       (deferred)                 

Unloaded modules:
f9f53000 f9f61000   swmidi.sys
fb0ae000 fb0b0000   splitter.sys
fb040000 fb043000   Sfloppy.SYS

Exemples

Les deux exemples suivants montrent la commande lm une fois sans aucune option et une fois avec l’option sm. Comparez l’ordre de tri dans les deux exemples.

Exemple 1 :

0:000> lm
start    end        module name
01000000 0100d000   stst       (deferred)
77c10000 77c68000   msvcrt     (deferred)
77dd0000 77e6b000   ADVAPI32   (deferred)
77e70000 77f01000   RPCRT4     (deferred)
7c800000 7c8f4000   kernel32   (deferred)
7c900000 7c9b0000   ntdll      (private pdb symbols) c:\db20sym\ntdll.pdb

Exemple 2 :

0:000> lm sm
start    end        module name
77dd0000 77e6b000   ADVAPI32   (deferred)
7c800000 7c8f4000   kernel32   (deferred)
77c10000 77c68000   msvcrt     (deferred)
7c900000 7c9b0000   ntdll      (private pdb symbols)  c:\db20sym\ntdll.pdb
77e70000 77f01000   RPCRT4     (deferred)
01000000 0100d000   stst       (deferred)

Voir aussi