Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

51 lines
1.3 KiB

  1. //----------------------------------------------------------------------------
  2. //
  3. // Generic routines and initialization code.
  4. //
  5. // Copyright (C) Microsoft Corporation, 2000-2001.
  6. //
  7. //----------------------------------------------------------------------------
  8. #ifndef __DBGEXTS_H__
  9. #define __DBGEXTS_H__
  10. #include <stdio.h>
  11. #include <stdlib.h>
  12. #include <string.h>
  13. #include <windows.h>
  14. #include <dbgeng.h>
  15. #ifdef __cplusplus
  16. extern "C" {
  17. #endif
  18. #define INIT_API() \
  19. HRESULT Status; \
  20. if ((Status = ExtQuery(Client)) != S_OK) return Status;
  21. #define EXT_RELEASE(Unk) \
  22. ((Unk) != NULL ? ((Unk)->Release(), (Unk) = NULL) : NULL)
  23. #define EXIT_API ExtRelease
  24. // Global variables initialized by query.
  25. extern PDEBUG_CLIENT2 g_ExtClient;
  26. extern PDEBUG_CONTROL2 g_ExtControl;
  27. extern PDEBUG_DATA_SPACES2 g_ExtData;
  28. extern PDEBUG_REGISTERS g_ExtRegisters;
  29. extern PDEBUG_SYMBOLS2 g_ExtSymbols;
  30. extern PDEBUG_SYSTEM_OBJECTS2 g_ExtSystem;
  31. HRESULT ExtQuery(PDEBUG_CLIENT Client);
  32. void ExtRelease(void);
  33. void __cdecl ExtOut(PCSTR Format, ...);
  34. void __cdecl ExtErr(PCSTR Format, ...);
  35. void ExtExec(PCSTR Command);
  36. #ifdef __cplusplus
  37. }
  38. #endif
  39. #endif // #ifndef __DBGEXTS_H__