home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / winbase / debug / deb / debdebug.h < prev    next >
Text File  |  1997-10-05  |  3KB  |  76 lines

  1.  
  2. /******************************************************************************\
  3. *       This is a part of the Microsoft Source Code Samples. 
  4. *       Copyright (C) 1993-1997 Microsoft Corporation.
  5. *       All rights reserved. 
  6. *       This source code is only intended as a supplement to 
  7. *       Microsoft Development Tools and/or WinHelp documentation.
  8. *       See these sources for detailed information regarding the 
  9. *       Microsoft samples programs.
  10. \******************************************************************************/
  11.  
  12. #ifndef DEBDEBUG_H
  13.  
  14.  #define DEBDEBUG_H
  15.  
  16.  #define EXCEPTION_VDM_EVENT ( (LONG) 0x40000005L )
  17.  
  18.  //-- debuggee startup information structure
  19.  typedef struct DEB_STARTUP_INFO_STRUCT* PDEB_STARTUP_INFO;
  20.  typedef struct DEB_STARTUP_INFO_STRUCT {
  21.            BOOL                fActive;
  22.            DWORD               dwProcessId;
  23.            LPTSTR              lpstrFileName;
  24.            LPTSTR              lpstrPathName;
  25.            HWND                hWndListBox;
  26.            STARTUPINFO         StartupInfo;
  27.            PROCESS_INFORMATION ProcessInfo;
  28.          } DEB_STARTUP_INFO;
  29.  
  30.  //-- linked list debug list information structures
  31.  typedef struct DEB_PROCESS_LIST_INFO_STRUCT* PDEB_PROCESS_LIST_INFO;
  32.  typedef struct DEB_PROCESS_LIST_INFO_STRUCT {
  33.            DWORD dwActiveProcesses;
  34.          } DEB_PROCESS_LIST_INFO;
  35.  
  36.  typedef struct DEB_THREAD_LIST_INFO_STRUCT* PDEB_THREAD_LIST_INFO;
  37.  typedef struct DEB_THREAD_LIST_INFO_STRUCT {
  38.            DWORD dwActiveThreads;
  39.          } DEB_THREAD_LIST_INFO;
  40.  
  41.  typedef struct DEB_DLL_LIST_INFO_STRUCT* PDEB_DLL_LIST_INFO;
  42.  typedef struct DEB_DLL_LIST_INFO_STRUCT {
  43.            DWORD dwActiveDlls;
  44.          } DEB_DLL_LIST_INFO;
  45.  
  46.  //-- linked list debug node information structures
  47.  typedef struct DEB_PROCESS_NODE_INFO_STRUCT* PDEB_PROCESS_NODE_INFO;
  48.  typedef struct DEB_PROCESS_NODE_INFO_STRUCT {
  49.            DWORD                     dwProcessId;  // sort key
  50.            DWORD                     dwThreadId;   // first thread
  51.            LPTSTR                    lpstrFileName;
  52.            LPTSTR                    lpstrPathName;
  53.            PLIST                     pThreadList;
  54.            PLIST                     pDllList;
  55.            CREATE_PROCESS_DEBUG_INFO ProcessDebugInfo;
  56.          } DEB_PROCESS_NODE_INFO;
  57.  
  58.  typedef struct DEB_THREAD_NODE_INFO_STRUCT* PDEB_THREAD_NODE_INFO;
  59.  typedef struct DEB_THREAD_NODE_INFO_STRUCT {
  60.            DWORD                    dwProcessId;
  61.            DWORD                    dwThreadId;  // sort key
  62.            CREATE_THREAD_DEBUG_INFO ThreadDebugInfo;
  63.          } DEB_THREAD_NODE_INFO;
  64.  
  65.  typedef struct DEB_DLL_NODE_INFO_STRUCT* PDEB_DLL_NODE_INFO;
  66.  typedef struct DEB_DLL_NODE_INFO_STRUCT {
  67.            LPTSTR              lpstrFileName;
  68.            LPTSTR              lpstrPathName;
  69.            LOAD_DLL_DEBUG_INFO DllDebugInfo; // sort key =  DllDebugInfo.lpBaseOfDll
  70.          } DEB_DLL_NODE_INFO;
  71.  
  72.  //-- public function prototypes
  73.  DWORD WINAPI DebugEventThread( PDEB_STARTUP_INFO );
  74.  
  75. #endif // DEBDEBUG_H
  76.