Updated Platform Support
Where necessary, the DbgHelp library has been widened to support both 32- and 64-bit Windows. The original function and structure definitions are still in DbgHelp.h, but there are also updated versions of these definitions that are compatible with 64-bit Windows. If you use the updated functions in your code, it can be compiled for both 32- and 64-bit Windows. Your code will also be more efficient, since the original functions simply call the updated functions to perform the work.
For example, DbgHelp.h contains definitions for SymUnloadModule (original function) and SymUnloadModule64 (updated function). These definitions are nearly identical, but use different types for the BaseOfDll parameter. (SymUnloadModule uses the DWORD type, while SymUnloadModule64 uses the DWORD64 type.) If you write your code to use SymUnloadModule64, it can be compiled for both 32- and 64-bit Windows. The code is also more efficient than if it were to call SymUnloadModule.
The following is a list of the updated functions:
EnumerateLoadedModules64
StackWalk64
SymEnumerateModules64
SymEnumerateSymbols64
SymFunctionTableAccess64
SymGetLineFromAddr64
SymGetLineFromName64
SymGetLineNext64
SymGetLinePrev64
SymGetModuleBase64
SymGetModuleInfo64
SymGetSymFromAddr64
SymGetSymFromName64
SymGetSymNext64
SymGetSymPrev64
SymLoadModule64
SymRegisterCallback64
SymRegisterFunctionEntryCallback64
SymUnDName64
SymUnloadModule64
The following is a list of the updated structures:
ADDRESS64
IMAGEHLP_DEFERRED_SYMBOL_LOAD64
IMAGEHLP_DUPLICATE_SYMBOL64
IMAGEHLP_LINE64
IMAGEHLP_MODULE64
IMAGEHLP_SYMBOL64
KDHELP64
STACKFRAME64