|
|
|
|
@@ -20,6 +20,7 @@ DWORD :: c_ulong
|
|
|
|
|
DWORDLONG :: c.ulonglong
|
|
|
|
|
QWORD :: c.ulonglong
|
|
|
|
|
HANDLE :: distinct LPVOID
|
|
|
|
|
PHANDLE :: ^HANDLE
|
|
|
|
|
HINSTANCE :: HANDLE
|
|
|
|
|
HMODULE :: distinct HINSTANCE
|
|
|
|
|
HRESULT :: distinct LONG
|
|
|
|
|
@@ -133,6 +134,11 @@ LPWSAOVERLAPPED :: distinct rawptr
|
|
|
|
|
LPWSAOVERLAPPED_COMPLETION_ROUTINE :: distinct rawptr
|
|
|
|
|
LPCVOID :: rawptr
|
|
|
|
|
|
|
|
|
|
PACCESS_TOKEN :: PVOID
|
|
|
|
|
PSECURITY_DESCRIPTOR :: PVOID
|
|
|
|
|
PSID :: PVOID
|
|
|
|
|
PCLAIMS_BLOB :: PVOID
|
|
|
|
|
|
|
|
|
|
PCONDITION_VARIABLE :: ^CONDITION_VARIABLE
|
|
|
|
|
PLARGE_INTEGER :: ^LARGE_INTEGER
|
|
|
|
|
PSRWLOCK :: ^SRWLOCK
|
|
|
|
|
@@ -175,6 +181,7 @@ FILE_SHARE_DELETE: DWORD : 0x00000004
|
|
|
|
|
FILE_GENERIC_ALL: DWORD : 0x10000000
|
|
|
|
|
FILE_GENERIC_EXECUTE: DWORD : 0x20000000
|
|
|
|
|
FILE_GENERIC_READ: DWORD : 0x80000000
|
|
|
|
|
FILE_ALL_ACCESS :: STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF
|
|
|
|
|
|
|
|
|
|
FILE_ACTION_ADDED :: 0x00000001
|
|
|
|
|
FILE_ACTION_REMOVED :: 0x00000002
|
|
|
|
|
@@ -230,6 +237,20 @@ SECURITY_SQOS_PRESENT: DWORD : 0x00100000
|
|
|
|
|
|
|
|
|
|
FIONBIO: c_ulong : 0x8004667e
|
|
|
|
|
|
|
|
|
|
OWNER_SECURITY_INFORMATION :: 0x00000001
|
|
|
|
|
GROUP_SECURITY_INFORMATION :: 0x00000002
|
|
|
|
|
DACL_SECURITY_INFORMATION :: 0x00000004
|
|
|
|
|
SACL_SECURITY_INFORMATION :: 0x00000008
|
|
|
|
|
LABEL_SECURITY_INFORMATION :: 0x00000010
|
|
|
|
|
ATTRIBUTE_SECURITY_INFORMATION :: 0x00000020
|
|
|
|
|
SCOPE_SECURITY_INFORMATION :: 0x00000040
|
|
|
|
|
PROCESS_TRUST_LABEL_SECURITY_INFORMATION :: 0x00000080
|
|
|
|
|
ACCESS_FILTER_SECURITY_INFORMATION :: 0x00000100
|
|
|
|
|
BACKUP_SECURITY_INFORMATION :: 0x00010000
|
|
|
|
|
PROTECTED_DACL_SECURITY_INFORMATION :: 0x80000000
|
|
|
|
|
PROTECTED_SACL_SECURITY_INFORMATION :: 0x40000000
|
|
|
|
|
UNPROTECTED_DACL_SECURITY_INFORMATION :: 0x20000000
|
|
|
|
|
UNPROTECTED_SACL_SECURITY_INFORMATION :: 0x10000000
|
|
|
|
|
|
|
|
|
|
GET_FILEEX_INFO_LEVELS :: distinct i32
|
|
|
|
|
GetFileExInfoStandard: GET_FILEEX_INFO_LEVELS : 0
|
|
|
|
|
@@ -773,6 +794,30 @@ MSG :: struct {
|
|
|
|
|
|
|
|
|
|
LPMSG :: ^MSG
|
|
|
|
|
|
|
|
|
|
TEXTMETRICW :: struct {
|
|
|
|
|
tmHeight: LONG,
|
|
|
|
|
tmAscent: LONG,
|
|
|
|
|
tmDescent: LONG,
|
|
|
|
|
tmInternalLeading: LONG,
|
|
|
|
|
tmExternalLeading: LONG,
|
|
|
|
|
tmAveCharWidth: LONG,
|
|
|
|
|
tmMaxCharWidth: LONG,
|
|
|
|
|
tmWeight: LONG,
|
|
|
|
|
tmOverhang: LONG,
|
|
|
|
|
tmDigitizedAspectX: LONG,
|
|
|
|
|
tmDigitizedAspectY: LONG,
|
|
|
|
|
tmFirstChar: WCHAR,
|
|
|
|
|
tmLastChar: WCHAR,
|
|
|
|
|
tmDefaultChar: WCHAR,
|
|
|
|
|
tmBreakChar: WCHAR,
|
|
|
|
|
tmItalic: BYTE,
|
|
|
|
|
tmUnderlined: BYTE,
|
|
|
|
|
tmStruckOut: BYTE,
|
|
|
|
|
tmPitchAndFamily: BYTE,
|
|
|
|
|
tmCharSet: BYTE,
|
|
|
|
|
}
|
|
|
|
|
LPTEXTMETRICW :: ^TEXTMETRICW
|
|
|
|
|
|
|
|
|
|
PAINTSTRUCT :: struct {
|
|
|
|
|
hdc: HDC,
|
|
|
|
|
fErase: BOOL,
|
|
|
|
|
@@ -1462,6 +1507,24 @@ IDI_WARNING := IDI_EXCLAMATION
|
|
|
|
|
IDI_ERROR := IDI_HAND
|
|
|
|
|
IDI_INFORMATION := IDI_ASTERISK
|
|
|
|
|
|
|
|
|
|
IMAGE_BITMAP :: 0
|
|
|
|
|
IMAGE_ICON :: 1
|
|
|
|
|
IMAGE_CURSOR :: 2
|
|
|
|
|
IMAGE_ENHMETAFILE :: 3
|
|
|
|
|
|
|
|
|
|
LR_DEFAULTCOLOR :: 0x00000000
|
|
|
|
|
LR_MONOCHROME :: 0x00000001
|
|
|
|
|
LR_COLOR :: 0x00000002
|
|
|
|
|
LR_COPYRETURNORG :: 0x00000004
|
|
|
|
|
LR_COPYDELETEORG :: 0x00000008
|
|
|
|
|
LR_LOADFROMFILE :: 0x00000010
|
|
|
|
|
LR_LOADTRANSPARENT :: 0x00000020
|
|
|
|
|
LR_DEFAULTSIZE :: 0x00000040
|
|
|
|
|
LR_VGACOLOR :: 0x00000080
|
|
|
|
|
LR_LOADMAP3DCOLORS :: 0x00001000
|
|
|
|
|
LR_CREATEDIBSECTION :: 0x00002000
|
|
|
|
|
LR_COPYFROMRESOURCE :: 0x00004000
|
|
|
|
|
LR_SHARED :: 0x00008000
|
|
|
|
|
|
|
|
|
|
// DIB color table identifiers
|
|
|
|
|
DIB_RGB_COLORS :: 0
|
|
|
|
|
@@ -1793,7 +1856,58 @@ HEAP_ZERO_MEMORY: DWORD : 0x00000008
|
|
|
|
|
HANDLE_FLAG_INHERIT: DWORD : 0x00000001
|
|
|
|
|
HANDLE_FLAG_PROTECT_FROM_CLOSE :: 0x00000002
|
|
|
|
|
|
|
|
|
|
TOKEN_READ: DWORD : 0x20008
|
|
|
|
|
GENERIC_MAPPING :: struct {
|
|
|
|
|
GenericRead: ACCESS_MASK,
|
|
|
|
|
GenericWrite: ACCESS_MASK,
|
|
|
|
|
GenericExecute: ACCESS_MASK,
|
|
|
|
|
GenericAll: ACCESS_MASK,
|
|
|
|
|
}
|
|
|
|
|
PGENERIC_MAPPING :: ^GENERIC_MAPPING
|
|
|
|
|
|
|
|
|
|
SECURITY_IMPERSONATION_LEVEL :: enum {
|
|
|
|
|
SecurityAnonymous,
|
|
|
|
|
SecurityIdentification,
|
|
|
|
|
SecurityImpersonation,
|
|
|
|
|
SecurityDelegation,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
SECURITY_INFORMATION :: DWORD
|
|
|
|
|
ANYSIZE_ARRAY :: 1
|
|
|
|
|
|
|
|
|
|
LUID_AND_ATTRIBUTES :: struct {
|
|
|
|
|
Luid: LUID,
|
|
|
|
|
Attributes: DWORD,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PRIVILEGE_SET :: struct {
|
|
|
|
|
PrivilegeCount: DWORD,
|
|
|
|
|
Control: DWORD,
|
|
|
|
|
Privilege: [ANYSIZE_ARRAY]LUID_AND_ATTRIBUTES,
|
|
|
|
|
}
|
|
|
|
|
PPRIVILEGE_SET :: ^PRIVILEGE_SET
|
|
|
|
|
|
|
|
|
|
// Token Specific Access Rights.
|
|
|
|
|
TOKEN_ASSIGN_PRIMARY :: 0x0001
|
|
|
|
|
TOKEN_DUPLICATE :: 0x0002
|
|
|
|
|
TOKEN_IMPERSONATE :: 0x0004
|
|
|
|
|
TOKEN_QUERY :: 0x0008
|
|
|
|
|
TOKEN_QUERY_SOURCE :: 0x0010
|
|
|
|
|
TOKEN_ADJUST_PRIVILEGES :: 0x0020
|
|
|
|
|
TOKEN_ADJUST_GROUPS :: 0x0040
|
|
|
|
|
TOKEN_ADJUST_DEFAULT :: 0x0080
|
|
|
|
|
TOKEN_ADJUST_SESSIONID :: 0x0100
|
|
|
|
|
|
|
|
|
|
TOKEN_ALL_ACCESS_P :: STANDARD_RIGHTS_REQUIRED | TOKEN_ASSIGN_PRIMARY | TOKEN_DUPLICATE | TOKEN_IMPERSONATE | TOKEN_QUERY |\
|
|
|
|
|
TOKEN_QUERY_SOURCE | TOKEN_ADJUST_PRIVILEGES | TOKEN_ADJUST_GROUPS | TOKEN_ADJUST_DEFAULT
|
|
|
|
|
|
|
|
|
|
TOKEN_ALL_ACCESS :: TOKEN_ALL_ACCESS_P | TOKEN_ADJUST_SESSIONID
|
|
|
|
|
TOKEN_READ :: STANDARD_RIGHTS_READ | TOKEN_QUERY
|
|
|
|
|
TOKEN_WRITE :: STANDARD_RIGHTS_WRITE | TOKEN_ADJUST_PRIVILEGES | TOKEN_ADJUST_GROUPS | TOKEN_ADJUST_DEFAULT
|
|
|
|
|
TOKEN_EXECUTE :: STANDARD_RIGHTS_EXECUTE
|
|
|
|
|
TOKEN_TRUST_CONSTRAINT_MASK :: STANDARD_RIGHTS_READ | TOKEN_QUERY | TOKEN_QUERY_SOURCE
|
|
|
|
|
TOKEN_ACCESS_PSEUDO_HANDLE_WIN8 :: TOKEN_QUERY | TOKEN_QUERY_SOURCE
|
|
|
|
|
TOKEN_ACCESS_PSEUDO_HANDLE :: TOKEN_ACCESS_PSEUDO_HANDLE_WIN8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CP_ACP :: 0 // default to ANSI code page
|
|
|
|
|
CP_OEMCP :: 1 // default to OEM code page
|
|
|
|
|
@@ -3048,6 +3162,22 @@ SHCONTF_FLATLIST :: 0x4000
|
|
|
|
|
SHCONTF_ENABLE_ASYNC :: 0x8000
|
|
|
|
|
SHCONTF_INCLUDESUPERHIDDEN :: 0x10000
|
|
|
|
|
|
|
|
|
|
SHACF_DEFAULT :: 0x00000000 // Currently (SHACF_FILESYSTEM | SHACF_URLALL)
|
|
|
|
|
SHACF_FILESYSTEM :: 0x00000001 // This includes the File System as well as the rest of the shell (Desktop\My Computer\Control Panel\)
|
|
|
|
|
SHACF_URLALL :: (SHACF_URLHISTORY | SHACF_URLMRU)
|
|
|
|
|
SHACF_URLHISTORY :: 0x00000002 // URLs in the User's History
|
|
|
|
|
SHACF_URLMRU :: 0x00000004 // URLs in the User's Recently Used list.
|
|
|
|
|
SHACF_USETAB :: 0x00000008 // Use the tab to move thru the autocomplete possibilities instead of to the next dialog/window control.
|
|
|
|
|
SHACF_FILESYS_ONLY :: 0x00000010 // This includes the File System
|
|
|
|
|
SHACF_FILESYS_DIRS :: 0x00000020 // Same as SHACF_FILESYS_ONLY except it only includes directories, UNC servers, and UNC server shares.
|
|
|
|
|
SHACF_VIRTUAL_NAMESPACE :: 0x00000040 // Also include the virtual namespace
|
|
|
|
|
SHACF_AUTOSUGGEST_FORCE_ON :: 0x10000000 // Ignore the registry default and force the feature on.
|
|
|
|
|
SHACF_AUTOSUGGEST_FORCE_OFF :: 0x20000000 // Ignore the registry default and force the feature off.
|
|
|
|
|
SHACF_AUTOAPPEND_FORCE_ON :: 0x40000000 // Ignore the registry default and force the feature on. (Also know as AutoComplete)
|
|
|
|
|
SHACF_AUTOAPPEND_FORCE_OFF :: 0x80000000 // Ignore the registry default and force the feature off. (Also know as AutoComplete)
|
|
|
|
|
|
|
|
|
|
LWSTDAPI :: HRESULT
|
|
|
|
|
|
|
|
|
|
CLSID_FileOpenDialog := &GUID{0xDC1C5A9C, 0xE88A, 0x4DDE, {0xA5, 0xA1, 0x60, 0xF8, 0x2A, 0x20, 0xAE, 0xF7}}
|
|
|
|
|
CLSID_FileSaveDialog := &GUID{0xC0B4E2F3, 0xBA21, 0x4773, {0x8D, 0xBA, 0x33, 0x5E, 0xC9, 0x46, 0xEB, 0x8B}}
|
|
|
|
|
|
|
|
|
|
|