atldebugapi.h
上传用户:hfwmdy
上传日期:2016-01-14
资源大小:83k
文件大小:5k
源码类别:

GDI/图象编程

开发平台:

Visual C++

  1. // This is a part of the Active Template Library.
  2. // Copyright (C) Microsoft Corporation
  3. // All rights reserved.
  4. //
  5. // This source code is only intended as a supplement to the
  6. // Active Template Library Reference and related
  7. // electronic documentation provided with the library.
  8. // See these sources for detailed information regarding the
  9. // Active Template Library product.
  10. #ifndef __ATLDEBUGAPI_H__
  11. #define __ATLDEBUGAPI_H__
  12. #pragma once
  13. #ifdef __cplusplus
  14. #pragma pack(push,_ATL_PACKING)
  15. namespace ATL
  16. {
  17. extern "C" {
  18. #endif
  19. #define ATL_TRACE_MAX_NAME_SIZE 64
  20. typedef enum ATLTRACESTATUS
  21. {
  22. ATLTRACESTATUS_INHERIT, ATLTRACESTATUS_ENABLED, ATLTRACESTATUS_DISABLED
  23. } ATLTRACESTATUS;
  24. DWORD_PTR __stdcall AtlTraceOpenProcess( DWORD idProcess );
  25. void __stdcall AtlTraceCloseProcess( DWORD_PTR dwProcess );
  26. void __stdcall AtlTraceSnapshotProcess( DWORD_PTR dwProcess );
  27. DWORD_PTR __stdcall AtlTraceRegister(HINSTANCE hInst,
  28. int (__cdecl *fnCrtDbgReport)(int,const char *,int,const char *,const char *,...));
  29. BOOL __stdcall AtlTraceUnregister(DWORD_PTR dwModule);
  30. DWORD_PTR __stdcall AtlTraceRegisterCategoryA(DWORD_PTR dwModule, const CHAR szCategoryName[ATL_TRACE_MAX_NAME_SIZE]);
  31. DWORD_PTR __stdcall AtlTraceRegisterCategoryU(DWORD_PTR dwModule, const WCHAR szCategoryName[ATL_TRACE_MAX_NAME_SIZE]);
  32. BOOL __stdcall AtlTraceModifyProcess(DWORD_PTR dwProcess, UINT nLevel, BOOL bEnabled, BOOL bFuncAndCategoryNames, BOOL bFileNameAndLineNo);
  33. BOOL __stdcall AtlTraceModifyModule(DWORD_PTR dwProcess, DWORD_PTR dwModule, UINT nLevel, ATLTRACESTATUS eStatus);
  34. BOOL __stdcall AtlTraceModifyCategory(DWORD_PTR dwProcess, DWORD_PTR dwCategory, UINT nLevel, ATLTRACESTATUS eStatus);
  35. BOOL __stdcall AtlTraceGetProcess(DWORD_PTR dwProcess, UINT *pnLevel, BOOL *pbEnabled, BOOL *pbFuncAndCategoryNames, BOOL *pbFileNameAndLineNo);
  36. BOOL __stdcall AtlTraceGetModule(DWORD_PTR dwProcess, DWORD_PTR dwModule, UINT *pnLevel, ATLTRACESTATUS *pStatus);
  37. BOOL __stdcall AtlTraceGetCategory(DWORD_PTR dwProcess, DWORD_PTR dwCategory, UINT *pnLevel, ATLTRACESTATUS *pStatus);
  38. _ATL_INSECURE_DEPRECATE("AtlTraceGetUpdateEventNameA is unsafe. Instead use AtlTraceGetUpdateEventNameA_s") 
  39. void __stdcall AtlTraceGetUpdateEventNameA(__out_z CHAR *pszEventName);
  40. _ATL_INSECURE_DEPRECATE("AtlTraceGetUpdateEventNameU is unsafe. Instead use AtlTraceGetUpdateEventNameU_s") 
  41. void __stdcall AtlTraceGetUpdateEventNameU(__out_z WCHAR *pszEventName);
  42. void __stdcall AtlTraceGetUpdateEventNameA_s(__out_ecount_z(cchEventName) CHAR *pszEventName, __in size_t cchEventName);
  43. void __stdcall AtlTraceGetUpdateEventNameU_s(__out_ecount_z(cchEventName) WCHAR *pszEventName, __in size_t cchEventName);
  44. void __cdecl AtlTraceVA(DWORD_PTR dwModule, const char *pszFileName, int nLineNo,
  45. DWORD_PTR dwCategory, UINT nLevel, const CHAR *pszFormat, va_list ptr);
  46. void __cdecl AtlTraceVU(DWORD_PTR dwModule,const char *pszFileName, int nLineNo,
  47. DWORD_PTR dwCategory, UINT nLevel, const WCHAR *pszFormat, va_list ptr);
  48. BOOL __stdcall AtlTraceLoadSettingsA(const CHAR *pszFileName, DWORD_PTR dwProcess = 0);
  49. BOOL __stdcall AtlTraceLoadSettingsU(const WCHAR *pszFileName, DWORD_PTR dwProcess = 0);
  50. BOOL __stdcall AtlTraceSaveSettingsA(const CHAR *pszFileName, DWORD_PTR dwProcess = 0);
  51. BOOL __stdcall AtlTraceSaveSettingsU(const WCHAR *pszFileName, DWORD_PTR dwProcess = 0);
  52. typedef struct ATLTRACESETTINGS
  53. {
  54. UINT nLevel;
  55. ATLTRACESTATUS eStatus;
  56. } ATLTRACESETTINGS;
  57. typedef struct ATLTRACEPROCESSSETTINGS
  58. {
  59. UINT nLevel;
  60. BOOL bEnabled, bFuncAndCategoryNames, bFileNameAndLineNo;
  61. } ATLTRACEPROCESSSETTINGS;
  62. typedef struct ATLTRACEPROCESSINFO
  63. {
  64. WCHAR szName[ATL_TRACE_MAX_NAME_SIZE], szPath[MAX_PATH];
  65. DWORD dwId;
  66. ATLTRACEPROCESSSETTINGS settings;
  67. int nModules;
  68. } ATLTRACEPROCESSINFO;
  69. typedef struct ATLTRACEMODULEINFO
  70. {
  71. WCHAR szName[ATL_TRACE_MAX_NAME_SIZE], szPath[MAX_PATH];
  72. ATLTRACESETTINGS settings;
  73. DWORD_PTR dwModule;
  74. int nCategories;
  75. } ATLTRACEMODULEINFO;
  76. typedef struct ATLTRACECATEGORYINFO
  77. {
  78. WCHAR szName[ATL_TRACE_MAX_NAME_SIZE];
  79. ATLTRACESETTINGS settings;
  80. DWORD_PTR dwCategory;
  81. } ATLTRACECATEGORYINFO;
  82. BOOL __stdcall AtlTraceGetProcessInfo(DWORD_PTR dwProcess, ATLTRACEPROCESSINFO* pProcessInfo);
  83. void __stdcall AtlTraceGetModuleInfo(DWORD_PTR dwProcess, int iModule, ATLTRACEMODULEINFO* pModuleInfo);
  84. void __stdcall AtlTraceGetCategoryInfo(DWORD_PTR dwProcess, DWORD_PTR dwModule, int iCategory, ATLTRACECATEGORYINFO* pAtlTraceCategoryInfo);
  85. #ifdef UNICODE
  86. #define AtlTraceRegisterCategory AtlTraceRegisterCategoryU
  87. #define AtlTraceGetUpdateEventName AtlTraceGetUpdateEventNameU
  88. #define AtlTraceGetUpdateEventName_s AtlTraceGetUpdateEventNameU_s
  89. #define AtlTrace AtlTraceU
  90. #define AtlTraceV AtlTraceVU
  91. #define AtlTraceLoadSettings AtlTraceLoadSettingsU
  92. #define AtlTraceSaveSettings AtlTraceSaveSettingsU
  93. #else
  94. #define AtlTraceRegisterCategory AtlTraceRegisterCategoryA
  95. #define AtlTraceGetUpdateEventName AtlTraceGetUpdateEventNameA
  96. #define AtlTraceGetUpdateEventName_s AtlTraceGetUpdateEventNameA_s
  97. #define AtlTrace AtlTraceA
  98. #define AtlTraceV AtlTraceVA
  99. #define AtlTraceLoadSettings AtlTraceLoadSettingsA
  100. #define AtlTraceSaveSettings AtlTraceSaveSettingsA
  101. #endif
  102. #ifdef __cplusplus
  103. };
  104. };  // namespace ATL
  105. #pragma pack(pop)
  106. #endif
  107. #endif  // __ATLDEBUGAPI_H__