-
Notifications
You must be signed in to change notification settings - Fork 29
/
VisualDDKHelpers.h
29 lines (20 loc) · 1 KB
/
VisualDDKHelpers.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#pragma once
/*! \file
\brief Contains definitions making handles and NTSTATUS variables recognizable by debugger
This file contains definitions for special helper structures and enums, so NTSTATUS and HANDLE
variables will not appear in debugger as "unsigned long" and "void *".
Once the variable type is recognized correctly, VisualDDK can display additional information
about this types, such as translated NTSTATUS code and object referenced by handle.
*/
#ifdef _DEBUG
#include <excpt.h>
#include <ntdef.h>
typedef enum NTSTATUS_VisualDDK_Helper {} NTSTATUS_VisualDDK_Helper_t;
C_ASSERT(sizeof(NTSTATUS_VisualDDK_Helper_t) == sizeof(NTSTATUS));
#define NTSTATUS NTSTATUS_VisualDDK_Helper_t
typedef struct HANDLE_VisualDDK_Helper *HANDLE_VisualDDK_Helper_t, **PHANDLE_VisualDDK_Helper_t;
C_ASSERT(sizeof(HANDLE_VisualDDK_Helper_t) == sizeof(HANDLE));
C_ASSERT(sizeof(PHANDLE_VisualDDK_Helper_t) == sizeof(PHANDLE));
#define HANDLE HANDLE_VisualDDK_Helper_t
#define PHANDLE PHANDLE_VisualDDK_Helper_t
#endif