Supporto della piattaforma aggiornato

Se necessario, la libreria DbgHelp è stata ampliata per supportare Windows a 32 e a 64 bit. Le definizioni di funzione e struttura originali sono ancora in DbgHelp.h, ma esistono anche versioni aggiornate di queste definizioni compatibili con Windows a 64 bit. Se usi le funzioni aggiornate nel codice, può essere compilata per Windows a 32 e a 64 bit. Il codice sarà anche più efficiente, poiché le funzioni originali chiamano semplicemente le funzioni aggiornate per eseguire il lavoro.

Ad esempio, DbgHelp.h contiene definizioni per SymUnloadModule (funzione originale) e SymUnloadModule64 (funzione aggiornata). Queste definizioni sono quasi identiche, ma usano tipi diversi per il parametro BaseOfDll . SymUnloadModule usa il tipo DWORD, mentre SymUnloadModule64 usa il tipo DWORD64. Se si scrive il codice per usare SymUnloadModule64, può essere compilato per Windows a 32 e a 64 bit. Il codice è anche più efficiente rispetto a se dovesse chiamare SymUnloadModule.

Di seguito è riportato un elenco delle funzioni aggiornate:

EnumerateLoadedModules64
StackWalk64
SymEnumerateModules64
SymEnumerateSymbols64
SymFunctionTableAccess64
SymGetLineFromAddr64
SymGetLineFromName64
SymGetLineNext64
SymGetLinePrev64
SymGetModuleBase64
SymGetModuleInfo64
SymGetSymFromAddr64
SymGetSymFromName64
SymGetSymNext64
SymGetSymPrev64
SymLoadModule64
SymRegisterCallback64
SymRegisterFunctionEntryCallback64
SymUnDName64
SymUnloadModule64

Di seguito è riportato un elenco delle strutture aggiornate:

ADDRESS64
IMAGEHLP_DEFERRED_SYMBOL_LOAD64
IMAGEHLP_DUPLICATE_SYMBOL64
IMAGEHLP_LINE64
IMAGEHLP_MODULE64
IMAGEHLP_SYMBOL64
KDHELP64
STACKFRAME64