Enumerations

File System Enumerations

FILE_NOTIFY_CHANGE_OPTIONS

Specifies which file system notification events to include in the completion status packet.

FILE_NOTIFY_CHANGE_FILE_NAME
A file name was changed.
FILE_NOTIFY_CHANGE_DIR_NAME
A directory name was changed.
FILE_NOTIFY_CHANGE_ATTRIBUTES
The attributes of a file or directory were changed.
FILE_NOTIFY_CHANGE_SIZE
The size of a file or directory was changed.
FILE_NOTIFY_CHANGE_LAST_WRITE
The last write time of a file or directory was changed.
FILE_NOTIFY_CHANGE_SECURITY
The security or audit settings of a file or directory were changed.
FILE_NOTIFY_CHANGE_STREAM_NAME
A stream name was changed.
FILE_NOTIFY_CHANGE_STREAM_SIZE
A stream size was changed.
FILE_NOTIFY_CHANGE_ALL
All changes.

WAIT_STATUS

Indicates the status of a wait operation.

WAIT_OBJECT_0
The specified object is signaled.
WAIT_TIMEOUT
The time-out interval elapsed.
WAIT_FAILED
The function failed.

Process and Thread Enumerations

PROCESS_ACCESS_RIGHTS

Specifies the access rights for a process object.

PROCESS_QUERY_INFORMATION
Required to retrieve certain information about a process, such as its token, exit status, and priority class.
PROCESS_VM_OPERATION
Required to perform an operation on the virtual memory of another process, such as freeing the allocated memory.
PROCESS_SUSPEND_RESUME
Required to suspend and resume a process.
PROCESS_ALL_ACCESS
All possible access rights.

THREAD_ACCESS_RIGHTS

Specifies the access rights for a thread object.

THREAD_GET_CONTEXT
Required to retrieve the context of a thread.
THREAD_SET_CONTEXT
Required to modify the context of a thread.
THREAD_SUSPEND_RESUME
Required to suspend or resume a thread.
THREAD_ALL_ACCESS
All possible access rights.

Registry Enumerations

REG_SAM_DESIRED_ACCESS

Specifies the access rights for a registry key.

KEY_QUERY_VALUE
Query subkeys and values.
KEY_SET_VALUE
Create, delete, and set values.
KEY_CREATE_SUB_KEY
Create subkeys.
KEY_ENUMERATE_SUB_KEYS
Enumerate subkeys.
KEY_READ
Combines KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS, and KEY_NOTIFY.
KEY_WRITE
Combines KEY_SET_VALUE, KEY_CREATE_SUB_KEY, and KEY_ENUMERATE_SUB_KEYS.
KEY_ALL_ACCESS
Combines all the above access rights.

Other Enumerations

SYSTEM_INFORMATION_CLASS

Specifies the type of system information to retrieve.

SystemBasicInformation
Basic system information (number of processors, processor architecture, etc.).
SystemPerformanceInformation
Performance information (kernel time, user time, etc.).
SystemTimeOfDayInformation
Current time of day.
SystemProcessorInformation
Information about each processor.