Crash Dump Debug

9.1
L'obiettivo prefisso è quello di riuscire a rintracciare, dopo che un programma è crashato in produzione, il punto nel sorgente in cui si è verificato il problema.
Per fare questo bisogna fare generare un file di Dump (.dmp) costruito in modo da recuperare la linea di errore.
Bisogna preparare i computer in gioco per poter effettuare questa operazione.

Sul Server

Una tantum bisogna preparare il server scaricando i simboli da questo indirizzo: http://www.microsoft.com/whdc/DevTools/Debugging/symbolpkg.mspx
Dopodichè eseguire dtwtsn32.exe (da esegui) sul serve e selezionare le cartelle dove inserire il dump (io uso c:\drTassi ;-)
Abililtare i permessi in scrittura a tutti (Everyone, IWAM,SERVIZI etc..)
Assicurarsi che Dr. Watson sia il programma dedicato al debug di default. digitare drwtsn32.exe -i


Sul Development Computer

Sul computer di sviluppo installare Debugging Tool For Windows scaricabili qui: http://www.microsoft.com/whdc/devtools/debugging/default.mspx
Altre info sono qui http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_pdb_win32

  1. Generare il programma che si vuole debuggare in modalità release con debug
    Attenzione: in proprietà di configurazione > Linker > Debug indicare dove scrivere il file .pdb (solitamente C:\WINDOWS\symbols\exe\)
  2. Copiare il programma sul server e far generare l'errore.
  3. Quando si verificherà l'errore, copiare il file di dump (user.dmp) sul computer di sviluppo
  4. Aprirlo con windbg.exe (CTRL+D)
  5. Se tutto è ok si vedrà il sorgente dove è andato in errore


http://support.microsoft.com/kb/258205/it
http://support.microsoft.com/kb/216356/EN-US/

See also:
Easyhand C/C++: Crash Dump Debug | Last modified: 13/07/2013 09.23.55 Europe/Rome | #1.2177
P.. 1467
Page Visible: as draft
Easyhand C/C++
Una mano alle tue idee.
Privacy Policy