Outils pour utilisateurs

Outils du site


prog:windbg

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
prog:windbg [2020/01/30 15:47] – Ajout de "Activer les dump Windows" rootprog:windbg [2021/05/24 15:36] (Version actuelle) – [Activer les dump Windows pour les programmes] : ajout de "DumpFolder" root
Ligne 1: Ligne 1:
 Le logiciel permet de lire les dump de mémoire Windows (.dmp). Visual Studio n'arrive pas à lire ce format. Le logiciel permet de lire les dump de mémoire Windows (.dmp). Visual Studio n'arrive pas à lire ce format.
  
-====Activer les dump Windows====+====Installation==== 
 + 
 +Cela se faire depuis [[https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk|Windows SDK]] et sélectionner ''Debugging Tools for Windows''. [[https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/|Debugging Tools for Windows (WinDbg, KD, CDB, NTSD)]] {{ :prog:windbg:debugging_tools_for_windows_windbg_kd_cdb_ntsd_-_windows_drivers_microsoft_docs_2020-04-28_11_19_32_pm_.html |Archive du 22/02/2017 le 28/04/2020}} 
 + 
 +{{:windows:dump:windows_software_development_kit_windows_10.0.18362.1.png|}} 
 + 
 +Si un dossier de symbole est à déclarer, la syntaxe est la suivante : 
 + 
 +  srv*c:\SymbolsSrvCache*https://msdl.microsoft.com/download/symbols 
 +  srv*c:\SymbolsSrvCache*https://referencesource.microsoft.com/symbols 
 + 
 +[[https://lecrabeinfo.net/guide-ultime-pour-resoudre-erreurs-probleme-ecran-bleu-bsod-sur-windows.html|Le guide ULTIME pour résoudre les erreurs d’écran bleu (BSOD) sur Windows]] {{ :prog:windbg:le_guide_ultime_pour_resoudre_les_erreurs_d_ecran_bleu_bsod_sur_windows_le_crabe_info_2020-01-30_3_19_56_pm_.html |Archive du 06/03/2019 le 30/01/2020}} 
 + 
 +====Activer les dump Windows pour les BSOD==== 
 + 
 +Il faut déjà commencer par activer les dumps mémoires. Aller dans ''Paramètres système avancés'' puis ''Démarrage et récupération'' et choisir ''Image mémoire complète''
 + 
 +{{:prog:windbg:activedumpbsod1.png|}} 
 + 
 +{{:prog:windbg:activedumpbsod2.png|}} 
 + 
 +{{:prog:windbg:activedumpbsod3.png|}} 
 + 
 +====Activer les dump Windows pour les programmes====
  
 Tout se fait dans la base de registre. Tout se fait dans la base de registre.
Ligne 12: Ligne 35:
 |''DumpCount''|''DWORD''| |''DumpCount''|''DWORD''|
 |''DumpType''|2 (Full dump)| |''DumpType''|2 (Full dump)|
 +|''DumpFolder'' |''Folder''. Par défaut ''%LOCALAPPDATA%\CrashDumps''|
  
-Pour n'active rles dump que pour un process précis, ajouter les mêmes champs dans ''HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\PROCESS.EXE''+Pour n'activer les dump que pour un process précis, ajouter les mêmes champs dans ''HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\PROCESS.EXE''
  
 [[https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps|Collecting User-Mode Dumps]] {{ :windows:dump:collecting_user-mode_dumps_-_windows_applications_microsoft_docs_2019-10-16_11_36_13_.html |Archive du 31/05/2018 le 16/10/2019}} [[https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps|Collecting User-Mode Dumps]] {{ :windows:dump:collecting_user-mode_dumps_-_windows_applications_microsoft_docs_2019-10-16_11_36_13_.html |Archive du 31/05/2018 le 16/10/2019}}
  
 ====Comment lire les minidump==== ====Comment lire les minidump====
-Il faut déjà commencer par activer les dumps mémoires. Aller dans ''Paramètres système avancés'' puis ''Démarrage et récupération'' et choisir ''Image mémoire complète''. 
- 
-Pour lire le minidump : [[https://support.microsoft.com/en-us/help/315263/how-to-read-the-small-memory-dump-file-that-is-created-by-windows-if-a|How to read the small memory dump file that is created by Windows if a crash occurs]], {{ :prog:windbg:how_to_read_the_small_memory_dump_file_that_is_created_by_windows_if_a_crash_occurs.mhtml |Archive du 18/12/2019 le 30/01/2020}} 
  
-Installer WinDbg Cela se faire depuis [[https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk|Windows SDK]] et sélectionner ''Debugging Tools for Windows''. [[https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/|Debugging Tools for Windows (WinDbg, KD, CDB, NTSD)]] {{ :prog:windbg:debugging_tools_for_windows_windbg_kd_cdb_ntsd_-_windows_drivers_microsoft_docs.mhtml |Archive du 22/02/2017 le 30/01/2020}}+Pour lire le minidump : [[https://support.microsoft.com/en-us/help/315263/how-to-read-the-small-memory-dump-file-that-is-created-by-windows-if-a|How to read the small memory dump file that is created by Windows if a crash occurs]] {{ :prog:windbg:how_to_read_the_small_memory_dump_file_that_is_created_by_windows_if_a_crash_occurs_2020-04-28_11_19_39_pm_.html |Archive du 18/12/2019 le 28/04/2020}}
  
 Exécuter WinDgb : Exécuter WinDgb :
Ligne 104: Ligne 125:
 ffffef04`64fc79c0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KeSynchronizeExecution+0x5ad0 ffffef04`64fc79c0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KeSynchronizeExecution+0x5ad0
 </code> </code>
 +
 +====Cas du <Unloaded_xxxxxxxx.dll>+0x12345====
 +
 +Ouvrir WinDbg. Cliquer sur ''!analyze -v''.
 +
 +Lancer la commande ''lm''.
 +
 +  Unloaded modules:
 +  00007ffb`33920000 00007ffb`33943000   VCOMP120.DLL
 +
 +Si dans la pile, on constate d'une dll est dans la zone ''Unloaded modules:'', il faut forcer son chargement.
 +
 +Taper les commandes :
 +
 +  ? 00007ffb`33943000 - 00007ffb`33920000
 +  Evaluate expression: 143360 = 00000000`00023000
 +  
 +  .reload vcomp120.dll=00007ffb`33920000,00000000`00023000
 +
 +Ainsi, les symboles arrivent à se charger :
 +
 +  VCOMP120 + 0x411e   
 +
 +devient :
 +  vcomp120!_vcomp::PartialBarrierN::Block + 0x3a   
 +
 +
 +[[https://blogs.msdn.microsoft.com/jankrivanek/2012/12/11/crash-in-unloaded_mydll-dll-how-to-find-out-who-called-unloaded-dll/|Crash in Unloaded_mydll.dll – how to find out who called unloaded dll]] {{ :windows:dump:crash_in_unloaded_mydll.dll_how_to_find_out_who_called_unloaded_dll._jan_krivanek_2019-10-16_11_39_08_.html |Archive du 11/12/2012 le 16/10/2019}}
prog/windbg.1580395678.txt.gz · Dernière modification : 2020/01/30 15:47 de root