.dump (Créer un fichier de vidage)
La commande .dump crée un fichier de vidage en mode utilisateur ou en mode noyau.
.dump [options] FileName
.dump /?
Paramètres
Options
Représente une ou plusieurs des options suivantes.
/a
Créer des fichiers de vidage pour tous les processus (nécessite -u).
/b[a]
Emballez le vidage dans un fichier CAB et supprimez le vidage. Des informations supplémentaires sont incluses si l’option a est spécifiée.
/c <comment>
Ajoutez un commentaire (non pris en charge dans tous les formats).
/j <addr>
Fournir une adresse JIT_DEBUG_INFO.
/o
Écrase un fichier de vidage existant portant le même nom. Si cette option n’est pas utilisée et qu’il existe un fichier portant le même nom, le fichier de vidage n’est pas écrit.
/u
Ajoutez un identifiant unique au nom du fichier de vidage.
/f[FullOptions]
(Mode noyau :) Crée un fichier de vidage complet.
(Mode utilisateur :) Non pris en charge. Auparavant, cette option permettait de créer un fichier de vidage complet en mode utilisateur, un format hérité contenant moins d’informations que le nouveau format de minidump. Pour plus d’informations, veuillez consulter la section Types de fichiers de vidage en mode utilisateur.
Vous pouvez ajouter les FullOptions suivantes pour modifier le contenu du fichier de vidage ; l’option est sensible à la casse.
FullOption | Effet |
---|---|
y | Ajoute des informations sur les registres AVX au fichier de vidage. |
/m[MiniOptions]
Crée un petit fichier de vidage (en mode noyau) ou un minidump (en mode utilisateur) Pour plus d’informations, veuillez consulter la section Fichiers de vidage en mode utilisateur. Si ni /f ni /m n’est spécifié, /m est l’option par défaut.
En mode utilisateur, /m peut être suivi de MiniOptions supplémentaires spécifiant les données supplémentaires à inclure dans le fichier de vidage. Si aucune MiniOptions n’est incluse, le fichier de vidage comprendra des informations sur les modules, les threads et la pile, mais aucune donnée supplémentaire. Vous pouvez ajouter n’importe laquelle des MiniOptions suivantes pour modifier le contenu du fichier de vidage ; elles sont sensibles à la casse.
MiniOption | Effet |
---|---|
a | Crée un minidump avec toutes les ajouts optionnels. L’option /ma équivaut à /mfFhut -- elle ajoute les données de mémoire complète, les données de handle, les informations sur les modules déchargés, les informations de mémoire de base et les informations sur le temps de thread au minidump. Toute défaillance à lire la mémoire inaccessible entraîne l’arrêt de la génération du minidump. |
Un | L’option /mA équivaut à /ma sauf qu’elle ignore toute défaillance à lire la mémoire inaccessible et continue de générer le minidump. |
f | Ajoute les données de mémoire complète au minidump. Toutes les pages engagées accessibles appartenant à l’application cible seront incluses. |
F | Ajoute toutes les informations de mémoire de base au minidump. Cela ajoute un flux au minidump qui contient toutes les informations de mémoire de base, et non seulement les informations sur la mémoire valide. Cela permet au débogueur de reconstruire la disposition complète de la mémoire virtuelle du processus lors du débogage du minidump. |
h | Ajoute des données sur les handles associés à l’application cible au minidump. |
u | Ajoute des informations sur les modules déchargés au minidump. |
t | Ajoute des informations supplémentaires sur les threads au minidump. Cela inclut les temps de thread, qui peuvent être affichés en utilisant l’extension !runaway ou la commande .ttime (Afficher les temps de thread) lors du débogage du minidump. |
i | Ajoute de la mémoire secondaire au minidump. La mémoire secondaire est toute mémoire référencée par un pointeur sur la pile ou la mémoire de secours, plus une petite région entourant cette adresse. |
p | Ajoute les données du bloc d’environnement de processus (PEB) et du bloc d’environnement de thread (TEB) au minidump. Cela peut être utile si vous avez besoin d’accéder aux informations système Windows concernant les processus et threads de l’application. |
w | Ajoute toutes les pages privées en lecture-écriture engagées au minidump. |
j | Ajoute tous les segments de données en lecture-écriture dans l’image exécutable au minidump. |
c | Ajoute des sections de code dans les images. |
r | Supprime du minidump les parties de la pile et de la mémoire de secours qui ne sont pas utiles pour recréer la trace d’appels. Les variables locales et autres valeurs de type de données sont également supprimées. Cette option ne rend pas le minidump plus petit (car ces sections de mémoire sont simplement remplies de zéros), mais elle est utile si vous souhaitez protéger la confidentialité des autres applications. |
R | Supprime les chemins complets des modules du minidump. Seuls les noms des modules seront inclus. C’est une option utile si vous souhaitez protéger la confidentialité de la structure de répertoires de l’utilisateur. |
y | Ajoute des informations sur les registres AVX au fichier de vidage. |
Options du mode noyau
Les options suivantes sont disponibles en mode noyau.
/k
Créer un vidage avec uniquement la mémoire du noyau.
/ka
Créer un vidage avec la mémoire active du noyau et du mode utilisateur.
Informations supplémentaires
Pour une description des fichiers de vidage en mode noyau et une explication de leur utilisation, veuillez consulter la section Fichiers de vidage en mode noyau. Pour une description des fichiers de vidage en mode utilisateur et une explication de leur utilisation, veuillez consulter la section Fichiers de vidage en mode utilisateur.
Notes
Cette commande peut être utilisée dans diverses situations :
Lors du débogage en mode utilisateur en direct, cette commande demande à l’application cible de générer un fichier de vidage, mais l’application cible ne se termine pas.
Lors du débogage en mode noyau en direct, cette commande demande à l’ordinateur cible de générer un fichier de vidage, mais l’ordinateur cible ne plante pas.
Lors du débogage d’un fichier de vidage sur incident, cette commande crée un nouveau fichier de vidage à partir de l’ancien. C’est utile si vous avez un fichier de vidage sur incident volumineux et que vous souhaitez en créer un plus petit.
Vous pouvez contrôler le type de fichier de vidage qui sera produit :
En mode noyau, pour produire un fichier de vidage complet, utilisez l’option /f. Pour produire un petit fichier de vidage, utilisez l’option /m (ou aucune option). La commande .dump ne peut pas produire un fichier de vidage de mémoire du noyau.
En mode utilisateur, .dump /m[MiniOptions] est le meilleur choix. Bien que « m » signifie « minidump », les fichiers de vidage créés en utilisant cette MiniOption peuvent varier en taille, de très petits à très grands. En spécifiant les MiniOptions appropriées, vous pouvez contrôler exactement quelles informations sont incluses. Par exemple, .dump /ma produit un fichier de vidage contenant un grand nombre d’informations. L’ancienne commande, .dump /f, produit un fichier de vidage "standard" modérément volumineux et ne peut pas être personnalisé.
Vous ne pouvez pas spécifier quel processus est vidé. Tous les processus en cours d’exécution seront vidés.
Les options /xc, /xr, /xp, et /xt sont utilisées pour stocker les informations d’exception et de contexte dans le fichier de vidage. Cela permet à la commande .ecxr (Afficher l’enregistrement du contexte d’exception) d’être exécutée sur ce fichier de vidage.
L’exemple suivant créera un minidump en mode utilisateur, contenant des informations complètes sur la mémoire et les handles :
0:000> .dump /mfh myfile.dmp
Les informations sur les handles peuvent être lues en utilisant la commande d’extension !handle.