SYMBOLS.C
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:1k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /*++
  2. Copyright (c) 1993  Microsoft Corporation
  3. Module Name:
  4.     symbols.c
  5. Abstract:
  6.     This file contains all support for the symbol table.
  7. Author:
  8.     Wesley Witt (wesw) 1-May-1993
  9. Environment:
  10.     User Mode
  11. --*/
  12. #include <windows.h>
  13. #include <stdlib.h>
  14. #include <stdio.h>
  15. #include <string.h>
  16. #include <imagehlp.h>
  17. #include "drwatson.h"
  18. #include "proto.h"
  19. #include "messages.h"
  20. BOOL
  21. SymbolEnumFunc(
  22.     LPSTR   SymbolName,
  23.     ULONG   Address,
  24.     ULONG   Size,
  25.     PVOID   Cxt
  26.     )
  27. {
  28.     lprintfs( "%08x %08x   %srn", Address, Size, SymbolName );
  29.     return TRUE;
  30. }
  31. VOID
  32. DumpSymbols(
  33.     PDEBUGPACKET dp
  34.     )
  35. {
  36.     IMAGEHLP_MODULE   mi;
  37.     if (SymGetModuleInfo( dp->hProcess, 0, &mi )) {
  38.         lprintf( MSG_SYMBOL_TABLE );
  39.         do {
  40.             lprintfs( "%srnrn", mi.ImageName );
  41.             SymEnumerateSymbols( dp->hProcess, mi.BaseOfImage, SymbolEnumFunc, NULL );
  42.         } while( SymGetModuleInfo( dp->hProcess, (DWORD)-1, &mi ));
  43.     }
  44. }