⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 winnt.h

📁 c++编程宝典源码及Quincy99编译器 是《标准C++编程宝典》电子工业出版社的光盘
💻 H
📖 第 1 页 / 共 5 页
字号:
#ifndef _WINNT_H#define _WINNT_H#ifdef __cplusplusextern "C" {#endif#include <winerror.h>#ifndef RC_INVOKED#include <string.h>/* FIXME: add more architectures. Is there a way to specify this in GCC? */#ifdef _X86_#define UNALIGNED#else#define UNALIGNED#endif#ifndef VOID#define VOID voidtypedef char CHAR;typedef short SHORT;typedef long LONG;#endiftypedef CHAR CCHAR;typedef unsigned char UCHAR,*PUCHAR;typedef unsigned short USHORT,*PUSHORT;typedef unsigned long ULONG,*PULONG;typedef char *PSZ;#ifndef _WCHAR_T_DEFINED#define _WCHAR_T_DEFINED#ifndef _WCHAR_T_#define _WCHAR_T_#undef __need_wchar_t#ifndef __cplusplustypedef unsigned short wchar_t;#endif#endif#endiftypedef wchar_t WCHAR;typedef WCHAR *PWCHAR,*LPWCH,*PWCH,*NWPSTR,*LPWSTR,*PWSTR;typedef CONST WCHAR *LPCWCH,*PCWCH,*LPCWSTR,*PCWSTR;typedef CHAR *PCHAR,*LPCH,*PCH,*NPSTR,*LPSTR,*PSTR;typedef CONST CHAR *LPCCH,*PCSTR,*LPCSTR;#ifndef _TCHAR_DEFINED#define _TCHAR_DEFINED#ifdef UNICODEtypedef WCHAR TCHAR;#elsetypedef CHAR TCHAR;#endif#endiftypedef TCHAR TBYTE,*PTCH,*PTBYTE;typedef TCHAR *LPTCH,*PTSTR,*LPTSTR,*LP,*PTCHAR;typedef const TCHAR *LPCTSTR;#ifdef UNICODE#define TEXT(q) L##q#else#define TEXT(q) q#endif#ifndef _T#define _T TEXT#endiftypedef SHORT *PSHORT;typedef LONG *PLONG;typedef void *HANDLE;typedef HANDLE *PHANDLE,*LPHANDLE;#ifdef STRICT#define DECLARE_HANDLE(n) typedef struct n##__{int i;}*n#else#define DECLARE_HANDLE(n) typedef HANDLE n#endiftypedef DWORD LCID;typedef PDWORD PLCID;typedef WORD LANGID;#ifdef __GNUC__#define HAVE_INT64#define _INTEGRAL_MAX_BITS 64#undef __int64#define __int64 long long#endif#if defined(HAVE_INT64) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64)typedef __int64 LONGLONG;typedef unsigned __int64 DWORDLONG;#elsetypedef double LONGLONG,DWORDLONG;#endiftypedef LONGLONG *PLONGLONG;typedef DWORDLONG *PDWORDLONG;typedef DWORDLONG ULONGLONG,*PULONGLONG;typedef LONGLONG USN;#ifdef HAVE_INT64#define Int32x32To64(a,b) ((LONGLONG)(a)*(LONGLONG)(b))#define UInt32x32To64(a,b) ((DWORDLONG)(a)*(DWORDLONG)(b))#define Int64ShllMod32(a,b) ((DWORDLONG)(a)<<(b))#define Int64ShraMod32(a,b) ((LONGLONG)(a)>>(b))#define Int64ShrlMod32(a,b) ((DWORDLONG)(a)>>(b))#endif#define ANSI_NULL '\0'#define UNICODE_NULL L'\0'typedef BYTE BOOLEAN,*PBOOLEAN;#endif#define NTAPI __stdcall#define APPLICATION_ERROR_MASK       0x20000000#define ERROR_SEVERITY_SUCCESS       0x00000000#define ERROR_SEVERITY_INFORMATIONAL 0x40000000#define ERROR_SEVERITY_WARNING       0x80000000#define ERROR_SEVERITY_ERROR         0xC0000000#define COMPRESSION_FORMAT_NONE 0#define COMPRESSION_FORMAT_DEFAULT 1#define COMPRESSION_FORMAT_LZNT1 2#define COMPRESSION_ENGINE_STANDARD 0#define COMPRESSION_ENGINE_MAXIMUM 256#define ACCESS_ALLOWED_ACE_TYPE	0#define ACCESS_DENIED_ACE_TYPE	1#define ANYSIZE_ARRAY 1#define SYSTEM_AUDIT_ACE_TYPE	2#define SYSTEM_ALARM_ACE_TYPE	3#define OBJECT_INHERIT_ACE	1#define CONTAINER_INHERIT_ACE	2#define NO_PROPAGATE_INHERIT_ACE	4#define INHERIT_ONLY_ACE	8#define VALID_INHERIT_FLAGS	16#define SUCCESSFUL_ACCESS_ACE_FLAG	64#define FAILED_ACCESS_ACE_FLAG	128#define DELETE	0x00010000L#define READ_CONTROL	0x20000L#define WRITE_DAC	0x40000L#define WRITE_OWNER	0x80000L#define SYNCHRONIZE	0x100000L#define STANDARD_RIGHTS_REQUIRED	0xF0000#define STANDARD_RIGHTS_READ	0x20000#define STANDARD_RIGHTS_WRITE	0x20000#define STANDARD_RIGHTS_EXECUTE	0x20000#define STANDARD_RIGHTS_ALL	0x1F0000#define SPECIFIC_RIGHTS_ALL	0xFFFF#define ACCESS_SYSTEM_SECURITY	0x1000000#define MAXIMUM_ALLOWED	0x2000000#define GENERIC_READ	0x80000000#define GENERIC_WRITE	0x40000000#define GENERIC_EXECUTE	0x20000000#define GENERIC_ALL	0x10000000#define FILE_READ_DATA	1#define FILE_LIST_DIRECTORY	1#define FILE_WRITE_DATA	2#define FILE_ADD_FILE	2#define FILE_APPEND_DATA	4#define FILE_ADD_SUBDIRECTORY	4#define FILE_CREATE_PIPE_INSTANCE	4#define FILE_READ_EA	8#define FILE_READ_PROPERTIES	8#define FILE_WRITE_EA	16#define FILE_WRITE_PROPERTIES	16#define FILE_EXECUTE	32#define FILE_TRAVERSE	32#define FILE_DELETE_CHILD	64#define FILE_READ_ATTRIBUTES	128#define FILE_WRITE_ATTRIBUTES	256#define FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x1FF)#define FILE_GENERIC_READ (STANDARD_RIGHTS_READ|FILE_READ_DATA|FILE_READ_ATTRIBUTES|FILE_READ_EA|SYNCHRONIZE)#define FILE_GENERIC_WRITE (STANDARD_RIGHTS_WRITE|FILE_WRITE_DATA|FILE_WRITE_ATTRIBUTES|FILE_WRITE_EA|FILE_APPEND_DATA|SYNCHRONIZE)#define FILE_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE|FILE_READ_ATTRIBUTES|FILE_EXECUTE|SYNCHRONIZE)#define FILE_SHARE_READ	1#define FILE_SHARE_WRITE 2#define FILE_SHARE_DELETE 4#define FILE_ATTRIBUTE_READONLY	1#define FILE_ATTRIBUTE_HIDDEN	2#define FILE_ATTRIBUTE_SYSTEM	4#define FILE_ATTRIBUTE_DIRECTORY	16#define FILE_ATTRIBUTE_ARCHIVE	32#define FILE_ATTRIBUTE_NORMAL	128#define FILE_ATTRIBUTE_TEMPORARY	256#define FILE_ATTRIBUTE_COMPRESSED	2048#define FILE_ATTRIBUTE_OFFLINE	0x1000#define FILE_NOTIFY_CHANGE_FILE_NAME	1#define FILE_NOTIFY_CHANGE_DIR_NAME	2#define FILE_NOTIFY_CHANGE_ATTRIBUTES	4#define FILE_NOTIFY_CHANGE_SIZE	8#define FILE_NOTIFY_CHANGE_LAST_WRITE	16#define FILE_NOTIFY_CHANGE_LAST_ACCESS  32#define FILE_NOTIFY_CHANGE_CREATION	64#define FILE_NOTIFY_CHANGE_SECURITY	256#define MAILSLOT_NO_MESSAGE	((DWORD)-1)#define MAILSLOT_WAIT_FOREVER	((DWORD)-1)#define FILE_CASE_SENSITIVE_SEARCH	1#define FILE_CASE_PRESERVED_NAMES	2#define FILE_UNICODE_ON_DISK	4#define FILE_PERSISTENT_ACLS	8#define FILE_FILE_COMPRESSION	16#define FILE_VOLUME_IS_COMPRESSED	0x8000#define IO_COMPLETION_MODIFY_STATE	2#define IO_COMPLETION_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|3)#define DUPLICATE_CLOSE_SOURCE	1#define DUPLICATE_SAME_ACCESS	2#define PROCESS_TERMINATE	1#define PROCESS_CREATE_THREAD	2#define PROCESS_VM_OPERATION	8#define PROCESS_VM_READ	16#define PROCESS_VM_WRITE	32#define PROCESS_DUP_HANDLE	64#define PROCESS_CREATE_PROCESS	128#define PROCESS_SET_QUOTA	256#define PROCESS_SET_INFORMATION	512#define PROCESS_QUERY_INFORMATION	1024#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0xFFF)#define THREAD_TERMINATE	1#define THREAD_SUSPEND_RESUME	2#define THREAD_GET_CONTEXT	8#define THREAD_SET_CONTEXT	16#define THREAD_SET_INFORMATION	32#define THREAD_QUERY_INFORMATION	64#define THREAD_SET_THREAD_TOKEN	128#define THREAD_IMPERSONATE	256#define THREAD_DIRECT_IMPERSONATION	0x200#define THREAD_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3FF)#define EXCEPTION_NONCONTINUABLE	1#define EXCEPTION_MAXIMUM_PARAMETERS 15#define SECURITY_NULL_SID_AUTHORITY	{0,0,0,0,0,0}#define SECURITY_WORLD_SID_AUTHORITY	{0,0,0,0,0,1}#define SECURITY_LOCAL_SID_AUTHORITY	{0,0,0,0,0,2}#define SECURITY_CREATOR_SID_AUTHORITY	{0,0,0,0,0,3}#define SECURITY_NON_UNIQUE_AUTHORITY	{0,0,0,0,0,4}#define SECURITY_NT_AUTHORITY	{0,0,0,0,0,5}#define SECURITY_NULL_RID	0#define SECURITY_WORLD_RID	0#define SECURITY_LOCAL_RID	0#define SECURITY_CREATOR_OWNER_RID	0#define SECURITY_CREATOR_GROUP_RID	1#define SECURITY_DIALUP_RID	1#define SECURITY_NETWORK_RID	2#define SECURITY_BATCH_RID	3#define SECURITY_INTERACTIVE_RID	4#define SECURITY_LOGON_IDS_RID	5#define SECURITY_SERVICE_RID	6#define SECURITY_LOCAL_SYSTEM_RID	18#define SECURITY_BUILTIN_DOMAIN_RID   32#define SECURITY_PRINCIPAL_SELF_RID   10#define DOMAIN_USER_RID_ADMIN 0x1F4L#define DOMAIN_USER_RID_GUEST 0x1F5L#define DOMAIN_GROUP_RID_ADMINS	0x200L#define DOMAIN_GROUP_RID_USERS	0x201L#define DOMAIN_ALIAS_RID_ADMINS	0x220L#define DOMAIN_ALIAS_RID_USERS	0x221L#define DOMAIN_ALIAS_RID_GUESTS	0x222L#define DOMAIN_ALIAS_RID_POWER_USERS	0x223L#define DOMAIN_ALIAS_RID_ACCOUNT_OPS	0x224L#define DOMAIN_ALIAS_RID_SYSTEM_OPS	0x225L#define DOMAIN_ALIAS_RID_PRINT_OPS	0x226L#define DOMAIN_ALIAS_RID_BACKUP_OPS	0x227L#define DOMAIN_ALIAS_RID_REPLICATOR	0x228L#define SE_CREATE_TOKEN_NAME	TEXT("SeCreateTokenPrivilege")#define SE_ASSIGNPRIMARYTOKEN_NAME	TEXT("SeAssignPrimaryTokenPrivilege")#define SE_LOCK_MEMORY_NAME	TEXT("SeLockMemoryPrivilege")#define SE_INCREASE_QUOTA_NAME	TEXT("SeIncreaseQuotaPrivilege")#define SE_UNSOLICITED_INPUT_NAME	TEXT("SeUnsolicitedInputPrivilege")#define SE_MACHINE_ACCOUNT_NAME TEXT("SeMachineAccountPrivilege")#define SE_TCB_NAME	TEXT("SeTcbPrivilege")#define SE_SECURITY_NAME	TEXT("SeSecurityPrivilege")#define SE_TAKE_OWNERSHIP_NAME	TEXT("SeTakeOwnershipPrivilege")#define SE_LOAD_DRIVER_NAME	TEXT("SeLoadDriverPrivilege")#define SE_SYSTEM_PROFILE_NAME	TEXT("SeSystemProfilePrivilege")#define SE_SYSTEMTIME_NAME	TEXT("SeSystemtimePrivilege")#define SE_PROF_SINGLE_PROCESS_NAME	TEXT("SeProfileSingleProcessPrivilege")#define SE_INC_BASE_PRIORITY_NAME	TEXT("SeIncreaseBasePriorityPrivilege")#define SE_CREATE_PAGEFILE_NAME TEXT("SeCreatePagefilePrivilege")#define SE_CREATE_PERMANENT_NAME	TEXT("SeCreatePermanentPrivilege")#define SE_BACKUP_NAME TEXT("SeBackupPrivilege")#define SE_RESTORE_NAME	TEXT("SeRestorePrivilege")#define SE_SHUTDOWN_NAME	TEXT("SeShutdownPrivilege")#define SE_DEBUG_NAME	TEXT("SeDebugPrivilege")#define SE_AUDIT_NAME	TEXT("SeAuditPrivilege")#define SE_SYSTEM_ENVIRONMENT_NAME	TEXT("SeSystemEnvironmentPrivilege")#define SE_CHANGE_NOTIFY_NAME	TEXT("SeChangeNotifyPrivilege")#define SE_REMOTE_SHUTDOWN_NAME	TEXT("SeRemoteShutdownPrivilege")#define LANG_BULGARIAN 	2#define LANG_CHINESE	4#define LANG_CROATIAN	26#define LANG_CZECH	5#define LANG_DANISH	6#define LANG_DUTCH	19#define LANG_ENGLISH	9#define LANG_FINNISH	11#define LANG_FRENCH	12#define LANG_GERMAN	7#define LANG_GREEK	8#define LANG_HUNGARIAN	14#define LANG_ICELANDIC	15#define LANG_ITALIAN	16#define LANG_JAPANESE	17#define LANG_KOREAN	18#define LANG_NEUTRAL	0#define LANG_NORWEGIAN	20#define LANG_POLISH	21#define LANG_PORTUGUESE	22#define LANG_ROMANIAN	24#define LANG_RUSSIAN	25#define LANG_SLOVAK	27#define LANG_SLOVENIAN	36#define LANG_SPANISH	10#define LANG_SWEDISH	29#define LANG_TURKISH	31#define SUBLANG_CHINESE_SIMPLIFIED	2#define SUBLANG_CHINESE_TRADITIONAL	1#define SUBLANG_CHINESE_HONGKONG	3#define SUBLANG_CHINESE_SINGAPORE	4#define SUBLANG_DEFAULT	1#define SUBLANG_DUTCH	1#define SUBLANG_DUTCH_BELGIAN	2#define SUBLANG_ENGLISH_AUS	3#define SUBLANG_ENGLISH_CAN	4#define SUBLANG_ENGLISH_EIRE	6#define SUBLANG_ENGLISH_NZ	5#define SUBLANG_ENGLISH_UK	2#define SUBLANG_ENGLISH_US	1#define SUBLANG_FRENCH	1#define SUBLANG_FRENCH_BELGIAN	2#define SUBLANG_FRENCH_CANADIAN	3#define SUBLANG_FRENCH_SWISS	4#define SUBLANG_GERMAN	1#define SUBLANG_GERMAN_AUSTRIAN	3#define SUBLANG_GERMAN_SWISS	2#define SUBLANG_ITALIAN	1#define SUBLANG_ITALIAN_SWISS	2#define SUBLANG_NEUTRAL	0#define SUBLANG_NORWEGIAN_BOKMAL	1#define SUBLANG_NORWEGIAN_NYNORSK	2#define SUBLANG_PORTUGUESE	2#define SUBLANG_PORTUGUESE_BRAZILIAN	1#define SUBLANG_SPANISH	1#define SUBLANG_SPANISH_MEXICAN	2#define SUBLANG_SPANISH_MODERN	3#define SUBLANG_SYS_DEFAULT	2#define NLS_VALID_LOCALE_MASK	1048575#define SORT_DEFAULT	0#define SORT_JAPANESE_XJIS	0#define SORT_JAPANESE_UNICODE	1#define SORT_CHINESE_BIG5	0#define SORT_CHINESE_UNICODE	1#define SORT_KOREAN_KSC	0#define SORT_KOREAN_UNICODE	1#define MAKELANGID(p,s)	((((WORD)(s))<<10)|(WORD)(p))#define MAKELCID(l,s) ((DWORD)((((DWORD)((WORD)(s)))<<16)|((DWORD)((WORD)(l)))))#define PRIMARYLANGID(l)	((WORD)(l)&0x3ff)#define SORTIDFROMLCID(l)	((WORD)((((DWORD)(l))&NLS_VALID_LOCALE_MASK)>>16))#define SORTVERSIONFROMLCID(l) ((WORD)((((DWORD)(l))>>20)&0xf))#define SUBLANGID(l)	((WORD)(l)>>10)#define LANGIDFROMLCID(l)	((WORD)(l))#define LANG_SYSTEM_DEFAULT	MAKELANGID(LANG_NEUTRAL,SUBLANG_SYS_DEFAULT)#define LANG_USER_DEFAULT	MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT)#define LOCALE_NEUTRAL	MAKELCID(MAKELANGID(LANG_NEUTRAL,SUBLANG_NEUTRAL),SORT_DEFAULT)#define ACL_REVISION	2#define ACL_REVISION_DS 4#define ACL_REVISION1 1#define ACL_REVISION2 2#define ACL_REVISION3 3#define ACL_REVISION4 4#define MIN_ACL_REVISION 2#define MAX_ACL_REVISION 4#define MINCHAR	0x80#define MAXCHAR	0x7f#define MINSHORT	0x8000#define MAXSHORT	0x7fff#define MINLONG	0x80000000#define MAXLONG	0x7fffffff#define MAXBYTE	0xff#define MAXWORD	0xffff#define MAXDWORD	0xffffffff#define PROCESSOR_INTEL_386 386#define PROCESSOR_INTEL_486 486#define PROCESSOR_INTEL_PENTIUM 586#define PROCESSOR_MIPS_R4000 4000#define PROCESSOR_ALPHA_21064 21064#define PROCESSOR_ARCHITECTURE_INTEL 0#define PROCESSOR_ARCHITECTURE_MIPS 1#define PROCESSOR_ARCHITECTURE_ALPHA 2#define PROCESSOR_ARCHITECTURE_PPC 3#define PROCESSOR_ARCHITECTURE_UNKNOWN 0xFFFF#define PAGE_READONLY 2#define PAGE_READWRITE 4#define PAGE_WRITECOPY 8#define FILE_ACTION_ADDED	1#define FILE_ACTION_REMOVED	2#define FILE_ACTION_MODIFIED	3#define FILE_ACTION_RENAMED_OLD_NAME	4#define FILE_ACTION_RENAMED_NEW_NAME	5#define HEAP_NO_SERIALIZE 1#define HEAP_GROWABLE 2#define HEAP_GENERATE_EXCEPTIONS 4#define HEAP_ZERO_MEMORY 8#define HEAP_REALLOC_IN_PLACE_ONLY 16#define HEAP_TAIL_CHECKING_ENABLED 32#define HEAP_FREE_CHECKING_ENABLED 64#define HEAP_DISABLE_COALESCE_ON_FREE 128#define HEAP_CREATE_ALIGN_16 0x0000#define HEAP_CREATE_ENABLE_TRACING 0x20000#define HEAP_MAXIMUM_TAG 0xFFF#define HEAP_PSEUDO_TAG_FLAG 0x8000#define HEAP_TAG_SHIFT 16#define HEAP_MAKE_TAG_FLAGS(b,o) ((DWORD)((b)+(o)<<16)))#define KEY_QUERY_VALUE 1#define KEY_SET_VALUE 2#define KEY_CREATE_SUB_KEY 4#define KEY_ENUMERATE_SUB_KEYS 8#define KEY_NOTIFY 16#define KEY_CREATE_LINK 32#define KEY_WRITE 0x20006#define KEY_EXECUTE 0x20019#define KEY_READ 0x20019#define KEY_ALL_ACCESS 0xf003f#define REG_WHOLE_HIVE_VOLATILE	1#define REG_REFRESH_HIVE	2#define REG_NO_LAZY_FLUSH	4#define REG_OPTION_RESERVED	0#define REG_OPTION_NON_VOLATILE	0#define REG_OPTION_VOLATILE	1#define REG_OPTION_CREATE_LINK	2#define REG_OPTION_BACKUP_RESTORE	4#define REG_OPTION_OPEN_LINK	8#define REG_LEGAL_OPTION	15#define OWNER_SECURITY_INFORMATION 1#define GROUP_SECURITY_INFORMATION 2#define DACL_SECURITY_INFORMATION 4#define SACL_SECURITY_INFORMATION 8

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -