w32: github.com/AllenDang/w32 Index | Files

package w32

import "github.com/AllenDang/w32"

Index

Package Files

advapi32.go advapi32_constants.go advapi32_typedef.go alpc.go alpc_constants.go alpc_typedef.go comctl32.go comdlg32.go constants.go create_process.go create_process_constants.go create_process_typedef.go dwmapi.go fork.go fork_constants.go fork_typedef.go gdi32.go gdiplus.go idispatch.go istream.go iunknown.go kernel32.go ole32.go oleaut32.go opengl32.go psapi.go shell32.go typedef.go user32.go utils.go vars.go

Constants

const (
    KEY_ALL_ACCESS         = 0xF003F
    KEY_CREATE_SUB_KEY     = 0x0004
    KEY_ENUMERATE_SUB_KEYS = 0x0008
    KEY_NOTIFY             = 0x0010
    KEY_QUERY_VALUE        = 0x0001
    KEY_SET_VALUE          = 0x0002
    KEY_READ               = 0x20019
    KEY_WRITE              = 0x20006
)

Registry Key Security and Access Rights

const (
    NFR_ANSI    = 1
    NFR_UNICODE = 2
    NF_QUERY    = 3
    NF_REQUERY  = 4
)
const (
    RRF_RT_REG_NONE         = 0x00000001
    RRF_RT_REG_SZ           = 0x00000002
    RRF_RT_REG_EXPAND_SZ    = 0x00000004
    RRF_RT_REG_BINARY       = 0x00000008
    RRF_RT_REG_DWORD        = 0x00000010
    RRF_RT_REG_MULTI_SZ     = 0x00000020
    RRF_RT_REG_QWORD        = 0x00000040
    RRF_RT_DWORD            = (RRF_RT_REG_BINARY | RRF_RT_REG_DWORD)
    RRF_RT_QWORD            = (RRF_RT_REG_BINARY | RRF_RT_REG_QWORD)
    RRF_RT_ANY              = 0x0000ffff
    RRF_NOEXPAND            = 0x10000000
    RRF_ZEROONFAILURE       = 0x20000000
    REG_PROCESS_APPKEY      = 0x00000001
    REG_MUI_STRING_TRUNCATE = 0x00000001
)

Registry value types

const (
    SC_MANAGER_CONNECT            = 0x0001
    SC_MANAGER_CREATE_SERVICE     = 0x0002
    SC_MANAGER_ENUMERATE_SERVICE  = 0x0004
    SC_MANAGER_LOCK               = 0x0008
    SC_MANAGER_QUERY_LOCK_STATUS  = 0x0010
    SC_MANAGER_MODIFY_BOOT_CONFIG = 0x0020
    SC_MANAGER_ALL_ACCESS         = STANDARD_RIGHTS_REQUIRED | SC_MANAGER_CONNECT | SC_MANAGER_CREATE_SERVICE | SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_LOCK | SC_MANAGER_QUERY_LOCK_STATUS | SC_MANAGER_MODIFY_BOOT_CONFIG
)

Service Control Manager object specific access types

const (
    SERVICE_KERNEL_DRIVER       = 0x00000001
    SERVICE_FILE_SYSTEM_DRIVER  = 0x00000002
    SERVICE_ADAPTER             = 0x00000004
    SERVICE_RECOGNIZER_DRIVER   = 0x00000008
    SERVICE_DRIVER              = SERVICE_KERNEL_DRIVER | SERVICE_FILE_SYSTEM_DRIVER | SERVICE_RECOGNIZER_DRIVER
    SERVICE_WIN32_OWN_PROCESS   = 0x00000010
    SERVICE_WIN32_SHARE_PROCESS = 0x00000020
    SERVICE_WIN32               = SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS
    SERVICE_INTERACTIVE_PROCESS = 0x00000100
    SERVICE_TYPE_ALL            = SERVICE_WIN32 | SERVICE_ADAPTER | SERVICE_DRIVER | SERVICE_INTERACTIVE_PROCESS
)

Service Types (Bit Mask)

const (
    SERVICE_STOPPED          = 0x00000001
    SERVICE_START_PENDING    = 0x00000002
    SERVICE_STOP_PENDING     = 0x00000003
    SERVICE_RUNNING          = 0x00000004
    SERVICE_CONTINUE_PENDING = 0x00000005
    SERVICE_PAUSE_PENDING    = 0x00000006
    SERVICE_PAUSED           = 0x00000007
)

Service State -- for CurrentState

const (
    SERVICE_ACCEPT_STOP                  = 0x00000001
    SERVICE_ACCEPT_PAUSE_CONTINUE        = 0x00000002
    SERVICE_ACCEPT_SHUTDOWN              = 0x00000004
    SERVICE_ACCEPT_PARAMCHANGE           = 0x00000008
    SERVICE_ACCEPT_NETBINDCHANGE         = 0x00000010
    SERVICE_ACCEPT_HARDWAREPROFILECHANGE = 0x00000020
    SERVICE_ACCEPT_POWEREVENT            = 0x00000040
    SERVICE_ACCEPT_SESSIONCHANGE         = 0x00000080
    SERVICE_ACCEPT_PRESHUTDOWN           = 0x00000100
    SERVICE_ACCEPT_TIMECHANGE            = 0x00000200
    SERVICE_ACCEPT_TRIGGEREVENT          = 0x00000400
)

Controls Accepted (Bit Mask)

const (
    SERVICE_QUERY_CONFIG         = 0x0001
    SERVICE_CHANGE_CONFIG        = 0x0002
    SERVICE_QUERY_STATUS         = 0x0004
    SERVICE_ENUMERATE_DEPENDENTS = 0x0008
    SERVICE_START                = 0x0010
    SERVICE_STOP                 = 0x0020
    SERVICE_PAUSE_CONTINUE       = 0x0040
    SERVICE_INTERROGATE          = 0x0080
    SERVICE_USER_DEFINED_CONTROL = 0x0100

    SERVICE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED |
        SERVICE_QUERY_CONFIG |
        SERVICE_CHANGE_CONFIG |
        SERVICE_QUERY_STATUS |
        SERVICE_ENUMERATE_DEPENDENTS |
        SERVICE_START |
        SERVICE_STOP |
        SERVICE_PAUSE_CONTINUE |
        SERVICE_INTERROGATE |
        SERVICE_USER_DEFINED_CONTROL
)

Service object specific access type

const (
    WNODE_FLAG_ALL_DATA              = 0x00000001
    WNODE_FLAG_SINGLE_INSTANCE       = 0x00000002
    WNODE_FLAG_SINGLE_ITEM           = 0x00000004
    WNODE_FLAG_EVENT_ITEM            = 0x00000008
    WNODE_FLAG_FIXED_INSTANCE_SIZE   = 0x00000010
    WNODE_FLAG_TOO_SMALL             = 0x00000020
    WNODE_FLAG_INSTANCES_SAME        = 0x00000040
    WNODE_FLAG_STATIC_INSTANCE_NAMES = 0x00000080
    WNODE_FLAG_INTERNAL              = 0x00000100
    WNODE_FLAG_USE_TIMESTAMP         = 0x00000200
    WNODE_FLAG_PERSIST_EVENT         = 0x00000400
    WNODE_FLAG_EVENT_REFERENCE       = 0x00002000
    WNODE_FLAG_ANSI_INSTANCENAMES    = 0x00004000
    WNODE_FLAG_METHOD_ITEM           = 0x00008000
    WNODE_FLAG_PDO_INSTANCE_NAMES    = 0x00010000
    WNODE_FLAG_TRACED_GUID           = 0x00020000
    WNODE_FLAG_LOG_WNODE             = 0x00040000
    WNODE_FLAG_USE_GUID_PTR          = 0x00080000
    WNODE_FLAG_USE_MOF_PTR           = 0x00100000
    WNODE_FLAG_NO_HEADER             = 0x00200000
    WNODE_FLAG_SEVERITY_MASK         = 0xff000000
)

WNODE flags, for ETW (Event Tracing for Windows) / WMI

const (
    EVENT_TRACE_TYPE_INFO                  = 0x00
    EVENT_TRACE_TYPE_START                 = 0x01
    EVENT_TRACE_TYPE_END                   = 0x02
    EVENT_TRACE_TYPE_STOP                  = 0x02
    EVENT_TRACE_TYPE_DC_START              = 0x03
    EVENT_TRACE_TYPE_DC_END                = 0x04
    EVENT_TRACE_TYPE_EXTENSION             = 0x05
    EVENT_TRACE_TYPE_REPLY                 = 0x06
    EVENT_TRACE_TYPE_DEQUEUE               = 0x07
    EVENT_TRACE_TYPE_RESUME                = 0x07
    EVENT_TRACE_TYPE_CHECKPOINT            = 0x08
    EVENT_TRACE_TYPE_SUSPEND               = 0x08
    EVENT_TRACE_TYPE_WINEVT_SEND           = 0x09
    EVENT_TRACE_TYPE_WINEVT_RECEIVE        = 0XF0
    TRACE_LEVEL_NONE                       = 0
    TRACE_LEVEL_CRITICAL                   = 1
    TRACE_LEVEL_FATAL                      = 1
    TRACE_LEVEL_ERROR                      = 2
    TRACE_LEVEL_WARNING                    = 3
    TRACE_LEVEL_INFORMATION                = 4
    TRACE_LEVEL_VERBOSE                    = 5
    TRACE_LEVEL_RESERVED6                  = 6
    TRACE_LEVEL_RESERVED7                  = 7
    TRACE_LEVEL_RESERVED8                  = 8
    TRACE_LEVEL_RESERVED9                  = 9
    EVENT_TRACE_TYPE_LOAD                  = 0x0A
    EVENT_TRACE_TYPE_IO_READ               = 0x0A
    EVENT_TRACE_TYPE_IO_WRITE              = 0x0B
    EVENT_TRACE_TYPE_IO_READ_INIT          = 0x0C
    EVENT_TRACE_TYPE_IO_WRITE_INIT         = 0x0D
    EVENT_TRACE_TYPE_IO_FLUSH              = 0x0E
    EVENT_TRACE_TYPE_IO_FLUSH_INIT         = 0x0F
    EVENT_TRACE_TYPE_MM_TF                 = 0x0A
    EVENT_TRACE_TYPE_MM_DZF                = 0x0B
    EVENT_TRACE_TYPE_MM_COW                = 0x0C
    EVENT_TRACE_TYPE_MM_GPF                = 0x0D
    EVENT_TRACE_TYPE_MM_HPF                = 0x0E
    EVENT_TRACE_TYPE_MM_AV                 = 0x0F
    EVENT_TRACE_TYPE_SEND                  = 0x0A
    EVENT_TRACE_TYPE_RECEIVE               = 0x0B
    EVENT_TRACE_TYPE_CONNECT               = 0x0C
    EVENT_TRACE_TYPE_DISCONNECT            = 0x0D
    EVENT_TRACE_TYPE_RETRANSMIT            = 0x0E
    EVENT_TRACE_TYPE_ACCEPT                = 0x0F
    EVENT_TRACE_TYPE_RECONNECT             = 0x10
    EVENT_TRACE_TYPE_CONNFAIL              = 0x11
    EVENT_TRACE_TYPE_COPY_TCP              = 0x12
    EVENT_TRACE_TYPE_COPY_ARP              = 0x13
    EVENT_TRACE_TYPE_ACKFULL               = 0x14
    EVENT_TRACE_TYPE_ACKPART               = 0x15
    EVENT_TRACE_TYPE_ACKDUP                = 0x16
    EVENT_TRACE_TYPE_GUIDMAP               = 0x0A
    EVENT_TRACE_TYPE_CONFIG                = 0x0B
    EVENT_TRACE_TYPE_SIDINFO               = 0x0C
    EVENT_TRACE_TYPE_SECURITY              = 0x0D
    EVENT_TRACE_TYPE_REGCREATE             = 0x0A
    EVENT_TRACE_TYPE_REGOPEN               = 0x0B
    EVENT_TRACE_TYPE_REGDELETE             = 0x0C
    EVENT_TRACE_TYPE_REGQUERY              = 0x0D
    EVENT_TRACE_TYPE_REGSETVALUE           = 0x0E
    EVENT_TRACE_TYPE_REGDELETEVALUE        = 0x0F
    EVENT_TRACE_TYPE_REGQUERYVALUE         = 0x10
    EVENT_TRACE_TYPE_REGENUMERATEKEY       = 0x11
    EVENT_TRACE_TYPE_REGENUMERATEVALUEKEY  = 0x12
    EVENT_TRACE_TYPE_REGQUERYMULTIPLEVALUE = 0x13
    EVENT_TRACE_TYPE_REGSETINFORMATION     = 0x14
    EVENT_TRACE_TYPE_REGFLUSH              = 0x15
    EVENT_TRACE_TYPE_REGKCBCREATE          = 0x16
    EVENT_TRACE_TYPE_REGKCBDELETE          = 0x17
    EVENT_TRACE_TYPE_REGKCBRUNDOWNBEGIN    = 0x18
    EVENT_TRACE_TYPE_REGKCBRUNDOWNEND      = 0x19
    EVENT_TRACE_TYPE_REGVIRTUALIZE         = 0x1A
    EVENT_TRACE_TYPE_REGCLOSE              = 0x1B
    EVENT_TRACE_TYPE_REGSETSECURITY        = 0x1C
    EVENT_TRACE_TYPE_REGQUERYSECURITY      = 0x1D
    EVENT_TRACE_TYPE_REGCOMMIT             = 0x1E
    EVENT_TRACE_TYPE_REGPREPARE            = 0x1F
    EVENT_TRACE_TYPE_REGROLLBACK           = 0x20
    EVENT_TRACE_TYPE_REGMOUNTHIVE          = 0x21
    EVENT_TRACE_TYPE_CONFIG_CPU            = 0x0A
    EVENT_TRACE_TYPE_CONFIG_PHYSICALDISK   = 0x0B
    EVENT_TRACE_TYPE_CONFIG_LOGICALDISK    = 0x0C
    EVENT_TRACE_TYPE_CONFIG_NIC            = 0x0D
    EVENT_TRACE_TYPE_CONFIG_VIDEO          = 0x0E
    EVENT_TRACE_TYPE_CONFIG_SERVICES       = 0x0F
    EVENT_TRACE_TYPE_CONFIG_POWER          = 0x10
    EVENT_TRACE_TYPE_CONFIG_NETINFO        = 0x11
    EVENT_TRACE_TYPE_CONFIG_IRQ            = 0x15
    EVENT_TRACE_TYPE_CONFIG_PNP            = 0x16
    EVENT_TRACE_TYPE_CONFIG_IDECHANNEL     = 0x17
    EVENT_TRACE_TYPE_CONFIG_PLATFORM       = 0x19
    EVENT_TRACE_FLAG_PROCESS               = 0x00000001
    EVENT_TRACE_FLAG_THREAD                = 0x00000002
    EVENT_TRACE_FLAG_IMAGE_LOAD            = 0x00000004
    EVENT_TRACE_FLAG_DISK_IO               = 0x00000100
    EVENT_TRACE_FLAG_DISK_FILE_IO          = 0x00000200
    EVENT_TRACE_FLAG_MEMORY_PAGE_FAULTS    = 0x00001000
    EVENT_TRACE_FLAG_MEMORY_HARD_FAULTS    = 0x00002000
    EVENT_TRACE_FLAG_NETWORK_TCPIP         = 0x00010000
    EVENT_TRACE_FLAG_REGISTRY              = 0x00020000
    EVENT_TRACE_FLAG_DBGPRINT              = 0x00040000
    EVENT_TRACE_FLAG_PROCESS_COUNTERS      = 0x00000008
    EVENT_TRACE_FLAG_CSWITCH               = 0x00000010
    EVENT_TRACE_FLAG_DPC                   = 0x00000020
    EVENT_TRACE_FLAG_INTERRUPT             = 0x00000040
    EVENT_TRACE_FLAG_SYSTEMCALL            = 0x00000080
    EVENT_TRACE_FLAG_DISK_IO_INIT          = 0x00000400
    EVENT_TRACE_FLAG_ALPC                  = 0x00100000
    EVENT_TRACE_FLAG_SPLIT_IO              = 0x00200000
    EVENT_TRACE_FLAG_DRIVER                = 0x00800000
    EVENT_TRACE_FLAG_PROFILE               = 0x01000000
    EVENT_TRACE_FLAG_FILE_IO               = 0x02000000
    EVENT_TRACE_FLAG_FILE_IO_INIT          = 0x04000000
    EVENT_TRACE_FLAG_DISPATCHER            = 0x00000800
    EVENT_TRACE_FLAG_VIRTUAL_ALLOC         = 0x00004000
    EVENT_TRACE_FLAG_EXTENSION             = 0x80000000
    EVENT_TRACE_FLAG_FORWARD_WMI           = 0x40000000
    EVENT_TRACE_FLAG_ENABLE_RESERVE        = 0x20000000
    EVENT_TRACE_FILE_MODE_NONE             = 0x00000000
    EVENT_TRACE_FILE_MODE_SEQUENTIAL       = 0x00000001
    EVENT_TRACE_FILE_MODE_CIRCULAR         = 0x00000002
    EVENT_TRACE_FILE_MODE_APPEND           = 0x00000004
    EVENT_TRACE_REAL_TIME_MODE             = 0x00000100
    EVENT_TRACE_DELAY_OPEN_FILE_MODE       = 0x00000200
    EVENT_TRACE_BUFFERING_MODE             = 0x00000400
    EVENT_TRACE_PRIVATE_LOGGER_MODE        = 0x00000800
    EVENT_TRACE_ADD_HEADER_MODE            = 0x00001000
    EVENT_TRACE_USE_GLOBAL_SEQUENCE        = 0x00004000
    EVENT_TRACE_USE_LOCAL_SEQUENCE         = 0x00008000
    EVENT_TRACE_RELOG_MODE                 = 0x00010000
    EVENT_TRACE_USE_PAGED_MEMORY           = 0x01000000
    EVENT_TRACE_FILE_MODE_NEWFILE          = 0x00000008
    EVENT_TRACE_FILE_MODE_PREALLOCATE      = 0x00000020
    EVENT_TRACE_NONSTOPPABLE_MODE          = 0x00000040
    EVENT_TRACE_SECURE_MODE                = 0x00000080
    EVENT_TRACE_USE_KBYTES_FOR_SIZE        = 0x00002000
    EVENT_TRACE_PRIVATE_IN_PROC            = 0x00020000
    EVENT_TRACE_MODE_RESERVED              = 0x00100000
    EVENT_TRACE_NO_PER_PROCESSOR_BUFFERING = 0x10000000
    EVENT_TRACE_CONTROL_QUERY              = 0
    EVENT_TRACE_CONTROL_STOP               = 1
    EVENT_TRACE_CONTROL_UPDATE             = 2
    EVENT_TRACE_CONTROL_FLUSH              = 3
)

ETW flags and types etc

const (
    ALPC_PORFLG_ALLOW_LPC_REQUESTS = 0x20000
    ALPC_PORFLG_SYSTEM_PROCESS     = 0x100000
    ALPC_PORFLG_WAITABLE_PORT      = 0x40000
)
const (
    ALPC_MSGFLG_REPLY_MESSAGE   = 0x1
    ALPC_MSGFLG_LPC_MODE        = 0x2     // ?
    ALPC_MSGFLG_RELEASE_MESSAGE = 0x10000 // dbg
    ALPC_MSGFLG_SYNC_REQUEST    = 0x20000 // dbg
    ALPC_MSGFLG_WAIT_USER_MODE  = 0x100000
    ALPC_MSGFLG_WAIT_ALERTABLE  = 0x200000
    ALPC_MSGFLG_WOW64_CALL      = 0x80000000 // dbg
)
const (
    ALPC_MESSAGE_SECURITY_ATTRIBUTE = 0x80000000
    ALPC_MESSAGE_VIEW_ATTRIBUTE     = 0x40000000
    ALPC_MESSAGE_CONTEXT_ATTRIBUTE  = 0x20000000
    ALPC_MESSAGE_HANDLE_ATTRIBUTE   = 0x10000000
)
const (
    OBJ_INHERIT          = 0x00000002
    OBJ_PERMANENT        = 0x00000010
    OBJ_EXCLUSIVE        = 0x00000020
    OBJ_CASE_INSENSITIVE = 0x00000040
    OBJ_OPENIF           = 0x00000080
    OBJ_OPENLINK         = 0x00000100
    OBJ_KERNEL_HANDLE    = 0x00000200
)
const (
    LPC_REQUEST               = 1
    LPC_REPLY                 = 2
    LPC_DATAGRAM              = 3
    LPC_LOST_REPLY            = 4
    LPC_PORT_CLOSED           = 5
    LPC_CLIENT_DIED           = 6
    LPC_EXCEPTION             = 7
    LPC_DEBUG_EVENT           = 8
    LPC_ERROR_EVENT           = 9
    LPC_CONNECTION_REQUEST    = 10
    LPC_CONTINUATION_REQUIRED = 0x2000
)
const (
    SecurityAnonymous      uint32 = 1
    SecurityIdentification uint32 = 2
    SecurityImpersonation  uint32 = 3
    SecurityDelegation     uint32 = 4
)
const (
    SECURITY_DYNAMIC_TRACKING byte = 1
    SECURITY_STATIC_TRACKING  byte = 0
)
const (
    ALPC_SYNC_OBJECT_TYPE   uint32 = 2
    ALPC_THREAD_OBJECT_TYPE uint32 = 4
)
const (
    FALSE = 0
    TRUE  = 1
)
const (
    NO_ERROR                         = 0
    ERROR_SUCCESS                    = 0
    ERROR_FILE_NOT_FOUND             = 2
    ERROR_PATH_NOT_FOUND             = 3
    ERROR_ACCESS_DENIED              = 5
    ERROR_INVALID_HANDLE             = 6
    ERROR_BAD_FORMAT                 = 11
    ERROR_INVALID_NAME               = 123
    ERROR_MORE_DATA                  = 234
    ERROR_NO_MORE_ITEMS              = 259
    ERROR_INVALID_SERVICE_CONTROL    = 1052
    ERROR_SERVICE_REQUEST_TIMEOUT    = 1053
    ERROR_SERVICE_NO_THREAD          = 1054
    ERROR_SERVICE_DATABASE_LOCKED    = 1055
    ERROR_SERVICE_ALREADY_RUNNING    = 1056
    ERROR_SERVICE_DISABLED           = 1058
    ERROR_SERVICE_DOES_NOT_EXIST     = 1060
    ERROR_SERVICE_CANNOT_ACCEPT_CTRL = 1061
    ERROR_SERVICE_NOT_ACTIVE         = 1062
    ERROR_DATABASE_DOES_NOT_EXIST    = 1065
    ERROR_SERVICE_DEPENDENCY_FAIL    = 1068
    ERROR_SERVICE_LOGON_FAILED       = 1069
    ERROR_SERVICE_MARKED_FOR_DELETE  = 1072
    ERROR_SERVICE_DEPENDENCY_DELETED = 1075
)
const (
    SE_ERR_FNF             = 2
    SE_ERR_PNF             = 3
    SE_ERR_ACCESSDENIED    = 5
    SE_ERR_OOM             = 8
    SE_ERR_DLLNOTFOUND     = 32
    SE_ERR_SHARE           = 26
    SE_ERR_ASSOCINCOMPLETE = 27
    SE_ERR_DDETIMEOUT      = 28
    SE_ERR_DDEFAIL         = 29
    SE_ERR_DDEBUSY         = 30
    SE_ERR_NOASSOC         = 31
)
const (
    SW_HIDE            = 0
    SW_NORMAL          = 1
    SW_SHOWNORMAL      = 1
    SW_SHOWMINIMIZED   = 2
    SW_MAXIMIZE        = 3
    SW_SHOWMAXIMIZED   = 3
    SW_SHOWNOACTIVATE  = 4
    SW_SHOW            = 5
    SW_MINIMIZE        = 6
    SW_SHOWMINNOACTIVE = 7
    SW_SHOWNA          = 8
    SW_RESTORE         = 9
    SW_SHOWDEFAULT     = 10
    SW_FORCEMINIMIZE   = 11
)

ShowWindow constants

const (
    CS_VREDRAW         = 0x00000001
    CS_HREDRAW         = 0x00000002
    CS_KEYCVTWINDOW    = 0x00000004
    CS_DBLCLKS         = 0x00000008
    CS_OWNDC           = 0x00000020
    CS_CLASSDC         = 0x00000040
    CS_PARENTDC        = 0x00000080
    CS_NOKEYCVT        = 0x00000100
    CS_NOCLOSE         = 0x00000200
    CS_SAVEBITS        = 0x00000800
    CS_BYTEALIGNCLIENT = 0x00001000
    CS_BYTEALIGNWINDOW = 0x00002000
    CS_GLOBALCLASS     = 0x00004000
    CS_IME             = 0x00010000
    CS_DROPSHADOW      = 0x00020000
)

Window class styles

const (
    IDC_ARROW       = 32512
    IDC_IBEAM       = 32513
    IDC_WAIT        = 32514
    IDC_CROSS       = 32515
    IDC_UPARROW     = 32516
    IDC_SIZENWSE    = 32642
    IDC_SIZENESW    = 32643
    IDC_SIZEWE      = 32644
    IDC_SIZENS      = 32645
    IDC_SIZEALL     = 32646
    IDC_NO          = 32648
    IDC_HAND        = 32649
    IDC_APPSTARTING = 32650
    IDC_HELP        = 32651
    IDC_ICON        = 32641
    IDC_SIZE        = 32640
)

Predefined cursor constants

const (
    IDI_APPLICATION = 32512
    IDI_HAND        = 32513
    IDI_QUESTION    = 32514
    IDI_EXCLAMATION = 32515
    IDI_ASTERISK    = 32516
         = 32517
    IDI_WARNING     = IDI_EXCLAMATION
    IDI_ERROR       = IDI_HAND
    IDI_INFORMATION = IDI_ASTERISK
)

Predefined icon constants

const (
    BS_3STATE          = 5
    BS_AUTO3STATE      = 6
    BS_AUTOCHECKBOX    = 3
    BS_AUTORADIOBUTTON = 9
    BS_BITMAP          = 128
    BS_BOTTOM          = 0X800
    BS_CENTER          = 0X300
    BS_CHECKBOX        = 2
    BS_DEFPUSHBUTTON   = 1
    BS_GROUPBOX        = 7
    BS_ICON            = 64
    BS_LEFT            = 256
    BS_LEFTTEXT        = 32
    BS_MULTILINE       = 0X2000
    BS_NOTIFY          = 0X4000
    BS_OWNERDRAW       = 0XB
    BS_PUSHBUTTON      = 0
    BS_PUSHLIKE        = 4096
    BS_RADIOBUTTON     = 4
    BS_RIGHT           = 512
    BS_RIGHTBUTTON     = 32
    BS_TEXT            = 0
    BS_TOP             = 0X400
    BS_USERBUTTON      = 8
    BS_VCENTER         = 0XC00
    BS_FLAT            = 0X8000
)

Button style constants

const (
    BST_CHECKED       = 1
    BST_INDETERMINATE = 2
    BST_UNCHECKED     = 0
    BST_FOCUS         = 8
    BST_PUSHED        = 4
)

Button state constants

const (
    COLOR_3DDKSHADOW              = 21
    COLOR_3DFACE                  = 15
    COLOR_3DHILIGHT               = 20
    COLOR_3DHIGHLIGHT             = 20
    COLOR_3DLIGHT                 = 22
    COLOR_BTNHILIGHT              = 20
    COLOR_3DSHADOW                = 16
    COLOR_ACTIVEBORDER            = 10
    COLOR_ACTIVECAPTION           = 2
    COLOR_APPWORKSPACE            = 12
    COLOR_BACKGROUND              = 1
    COLOR_DESKTOP                 = 1
    COLOR_BTNFACE                 = 15
    COLOR_BTNHIGHLIGHT            = 20
    COLOR_BTNSHADOW               = 16
    COLOR_BTNTEXT                 = 18
    COLOR_CAPTIONTEXT             = 9
    COLOR_GRAYTEXT                = 17
    COLOR_HIGHLIGHT               = 13
    COLOR_HIGHLIGHTTEXT           = 14
    COLOR_INACTIVEBORDER          = 11
    COLOR_INACTIVECAPTION         = 3
    COLOR_INACTIVECAPTIONTEXT     = 19
    COLOR_INFOBK                  = 24
    COLOR_INFOTEXT                = 23
    COLOR_MENU                    = 4
    COLOR_MENUTEXT                = 7
    COLOR_SCROLLBAR               = 0
    COLOR_WINDOW                  = 5
    COLOR_WINDOWFRAME             = 6
    COLOR_WINDOWTEXT              = 8
    COLOR_HOTLIGHT                = 26
    COLOR_GRADIENTACTIVECAPTION   = 27
    COLOR_GRADIENTINACTIVECAPTION = 28
)

Predefined brushes constants

const (
    BM_CLICK    = 245
    BM_GETCHECK = 240
    BM_GETIMAGE = 246
    BM_GETSTATE = 242
    BM_SETCHECK = 241
    BM_SETIMAGE = 247
    BM_SETSTATE = 243
    BM_SETSTYLE = 244
)

Button message constants

const (
    BN_CLICKED       = 0
    BN_PAINT         = 1
    BN_HILITE        = 2
    BN_PUSHED        = BN_HILITE
    BN_UNHILITE      = 3
    BN_UNPUSHED      = BN_UNHILITE
    BN_DISABLE       = 4
    BN_DOUBLECLICKED = 5
    BN_DBLCLK        = BN_DOUBLECLICKED
    BN_SETFOCUS      = 6
    BN_KILLFOCUS     = 7
)

Button notifications

const (
    GWL_EXSTYLE     = -20
    GWL_STYLE       = -16
    GWL_WNDPROC     = -4
    GWLP_WNDPROC    = -4
    GWL_HINSTANCE   = -6
    GWLP_HINSTANCE  = -6
    GWL_HWNDPARENT  = -8
    GWLP_HWNDPARENT = -8
    GWL_ID          = -12
    GWLP_ID         = -12
    GWL_USERDATA    = -21
    GWLP_USERDATA   = -21
)

GetWindowLong and GetWindowLongPtr constants

const (
    WS_OVERLAPPED       = 0X00000000
    WS_POPUP            = 0X80000000
    WS_CHILD            = 0X40000000
    WS_MINIMIZE         = 0X20000000
    WS_VISIBLE          = 0X10000000
    WS_DISABLED         = 0X08000000
    WS_CLIPSIBLINGS     = 0X04000000
    WS_CLIPCHILDREN     = 0X02000000
    WS_MAXIMIZE         = 0X01000000
    WS_CAPTION          = 0X00C00000
    WS_BORDER           = 0X00800000
    WS_DLGFRAME         = 0X00400000
    WS_VSCROLL          = 0X00200000
    WS_HSCROLL          = 0X00100000
    WS_SYSMENU          = 0X00080000
    WS_THICKFRAME       = 0X00040000
    WS_GROUP            = 0X00020000
    WS_TABSTOP          = 0X00010000
    WS_MINIMIZEBOX      = 0X00020000
    WS_MAXIMIZEBOX      = 0X00010000
    WS_TILED            = 0X00000000
    WS_ICONIC           = 0X20000000
    WS_SIZEBOX          = 0X00040000
    WS_OVERLAPPEDWINDOW = 0X00000000 | 0X00C00000 | 0X00080000 | 0X00040000 | 0X00020000 | 0X00010000
    WS_POPUPWINDOW      = 0X80000000 | 0X00800000 | 0X00080000
    WS_CHILDWINDOW      = 0X40000000
)

Window style constants

const (
    WS_EX_DLGMODALFRAME    = 0X00000001
    WS_EX_NOPARENTNOTIFY   = 0X00000004
    WS_EX_TOPMOST          = 0X00000008
    WS_EX_ACCEPTFILES      = 0X00000010
    WS_EX_TRANSPARENT      = 0X00000020
    WS_EX_MDICHILD         = 0X00000040
    WS_EX_TOOLWINDOW       = 0X00000080
    WS_EX_WINDOWEDGE       = 0X00000100
    WS_EX_CLIENTEDGE       = 0X00000200
    WS_EX_CONTEXTHELP      = 0X00000400
    WS_EX_RIGHT            = 0X00001000
    WS_EX_LEFT             = 0X00000000
    WS_EX_RTLREADING       = 0X00002000
    WS_EX_LTRREADING       = 0X00000000
    WS_EX_LEFTSCROLLBAR    = 0X00004000
    WS_EX_RIGHTSCROLLBAR   = 0X00000000
    WS_EX_CONTROLPARENT    = 0X00010000
    WS_EX_STATICEDGE       = 0X00020000
    WS_EX_APPWINDOW        = 0X00040000
    WS_EX_OVERLAPPEDWINDOW = 0X00000100 | 0X00000200
    WS_EX_PALETTEWINDOW    = 0X00000100 | 0X00000080 | 0X00000008
    WS_EX_LAYERED          = 0X00080000
    WS_EX_NOINHERITLAYOUT  = 0X00100000
    WS_EX_LAYOUTRTL        = 0X00400000
    WS_EX_NOACTIVATE       = 0X08000000
)

Extended window style constants

const (
    WM_APP                    = 32768
    WM_ACTIVATE               = 6
    WM_ACTIVATEAPP            = 28
    WM_AFXFIRST               = 864
    WM_AFXLAST                = 895
    WM_ASKCBFORMATNAME        = 780
    WM_CANCELJOURNAL          = 75
    WM_CANCELMODE             = 31
    WM_CAPTURECHANGED         = 533
    WM_CHANGECBCHAIN          = 781
    WM_CHAR                   = 258
    WM_CHARTOITEM             = 47
    WM_CHILDACTIVATE          = 34
    WM_CLEAR                  = 771
    WM_CLOSE                  = 16
    WM_COMMAND                = 273
    WM_COMMNOTIFY             = 68 /* OBSOLETE */
    WM_COMPACTING             = 65
    WM_COMPAREITEM            = 57
    WM_CONTEXTMENU            = 123
    WM_COPY                   = 769
    WM_COPYDATA               = 74
    WM_CREATE                 = 1
    WM_CTLCOLORBTN            = 309
    WM_CTLCOLORDLG            = 310
    WM_CTLCOLOREDIT           = 307
    WM_CTLCOLORLISTBOX        = 308
    WM_CTLCOLORMSGBOX         = 306
    WM_CTLCOLORSCROLLBAR      = 311
    WM_CTLCOLORSTATIC         = 312
    WM_CUT                    = 768
    WM_DEADCHAR               = 259
    WM_DELETEITEM             = 45
    WM_DESTROY                = 2
    WM_DESTROYCLIPBOARD       = 775
    WM_DEVICECHANGE           = 537
    WM_DEVMODECHANGE          = 27
    WM_DISPLAYCHANGE          = 126
    WM_DRAWCLIPBOARD          = 776
    WM_DRAWITEM               = 43
    WM_DROPFILES              = 563
    WM_ENABLE                 = 10
    WM_ENDSESSION             = 22
    WM_ENTERIDLE              = 289
    WM_ENTERMENULOOP          = 529
    WM_ENTERSIZEMOVE          = 561
    WM_ERASEBKGND             = 20
    WM_EXITMENULOOP           = 530
    WM_EXITSIZEMOVE           = 562
    WM_FONTCHANGE             = 29
    WM_GETDLGCODE             = 135
    WM_GETFONT                = 49
    WM_GETHOTKEY              = 51
    WM_GETICON                = 127
    WM_GETMINMAXINFO          = 36
    WM_GETTEXT                = 13
    WM_GETTEXTLENGTH          = 14
    WM_HANDHELDFIRST          = 856
    WM_HANDHELDLAST           = 863
    WM_HELP                   = 83
    WM_HOTKEY                 = 786
    WM_HSCROLL                = 276
    WM_HSCROLLCLIPBOARD       = 782
    WM_ICONERASEBKGND         = 39
    WM_INITDIALOG             = 272
    WM_INITMENU               = 278
    WM_INITMENUPOPUP          = 279
    WM_INPUT                  = 0X00FF
    WM_INPUTLANGCHANGE        = 81
    WM_INPUTLANGCHANGEREQUEST = 80
    WM_KEYDOWN                = 256
    WM_KEYUP                  = 257
    WM_KILLFOCUS              = 8
    WM_MDIACTIVATE            = 546
    WM_MDICASCADE             = 551
    WM_MDICREATE              = 544
    WM_MDIDESTROY             = 545
    WM_MDIGETACTIVE           = 553
    WM_MDIICONARRANGE         = 552
    WM_MDIMAXIMIZE            = 549
    WM_MDINEXT                = 548
    WM_MDIREFRESHMENU         = 564
    WM_MDIRESTORE             = 547
    WM_MDISETMENU             = 560
    WM_MDITILE                = 550
    WM_MEASUREITEM            = 44
    WM_GETOBJECT              = 0X003D
    WM_CHANGEUISTATE          = 0X0127
    WM_UPDATEUISTATE          = 0X0128
    WM_QUERYUISTATE           = 0X0129
    WM_UNINITMENUPOPUP        = 0X0125
    WM_MENURBUTTONUP          = 290
    WM_MENUCOMMAND            = 0X0126
    WM_MENUGETOBJECT          = 0X0124
    WM_MENUDRAG               = 0X0123
    WM_APPCOMMAND             = 0X0319
    WM_MENUCHAR               = 288
    WM_MENUSELECT             = 287
    WM_MOVE                   = 3
    WM_MOVING                 = 534
    WM_NCACTIVATE             = 134
    WM_NCCALCSIZE             = 131
    WM_NCCREATE               = 129
    WM_NCDESTROY              = 130
    WM_NCHITTEST              = 132
    WM_NCLBUTTONDBLCLK        = 163
    WM_NCLBUTTONDOWN          = 161
    WM_NCLBUTTONUP            = 162
    WM_NCMBUTTONDBLCLK        = 169
    WM_NCMBUTTONDOWN          = 167
    WM_NCMBUTTONUP            = 168
    WM_NCXBUTTONDOWN          = 171
    WM_NCXBUTTONUP            = 172
    WM_NCXBUTTONDBLCLK        = 173
    WM_NCMOUSEHOVER           = 0X02A0
    WM_NCMOUSELEAVE           = 0X02A2
    WM_NCMOUSEMOVE            = 160
    WM_NCPAINT                = 133
    WM_NCRBUTTONDBLCLK        = 166
    WM_NCRBUTTONDOWN          = 164
    WM_NCRBUTTONUP            = 165
    WM_NEXTDLGCTL             = 40
    WM_NEXTMENU               = 531
    WM_NOTIFY                 = 78
    WM_NOTIFYFORMAT           = 85
    WM_NULL                   = 0
    WM_PAINT                  = 15
    WM_PAINTCLIPBOARD         = 777
    WM_PAINTICON              = 38
    WM_PALETTECHANGED         = 785
    WM_PALETTEISCHANGING      = 784
    WM_PARENTNOTIFY           = 528
    WM_PASTE                  = 770
    WM_PENWINFIRST            = 896
    WM_PENWINLAST             = 911
    WM_POWER                  = 72
    WM_POWERBROADCAST         = 536
    WM_PRINT                  = 791
    WM_PRINTCLIENT            = 792
    WM_QUERYDRAGICON          = 55
    WM_QUERYENDSESSION        = 17
    WM_QUERYNEWPALETTE        = 783
    WM_QUERYOPEN              = 19
    WM_QUEUESYNC              = 35
    WM_QUIT                   = 18
    WM_RENDERALLFORMATS       = 774
    WM_RENDERFORMAT           = 773
    WM_SETCURSOR              = 32
    WM_SETFOCUS               = 7
    WM_SETFONT                = 48
    WM_SETHOTKEY              = 50
    WM_SETICON                = 128
    WM_SETREDRAW              = 11
    WM_SETTEXT                = 12
    WM_SETTINGCHANGE          = 26
    WM_SHOWWINDOW             = 24
    WM_SIZE                   = 5
    WM_SIZECLIPBOARD          = 779
    WM_SIZING                 = 532
    WM_SPOOLERSTATUS          = 42
    WM_STYLECHANGED           = 125
    WM_STYLECHANGING          = 124
    WM_SYSCHAR                = 262
    WM_SYSCOLORCHANGE         = 21
    WM_SYSCOMMAND             = 274
    WM_SYSDEADCHAR            = 263
    WM_SYSKEYDOWN             = 260
    WM_SYSKEYUP               = 261
    WM_TCARD                  = 82
    WM_THEMECHANGED           = 794
    WM_TIMECHANGE             = 30
    WM_TIMER                  = 275
    WM_UNDO                   = 772
    WM_USER                   = 1024
    WM_USERCHANGED            = 84
    WM_VKEYTOITEM             = 46
    WM_VSCROLL                = 277
    WM_VSCROLLCLIPBOARD       = 778
    WM_WINDOWPOSCHANGED       = 71
    WM_WINDOWPOSCHANGING      = 70
    WM_WININICHANGE           = 26
    WM_KEYFIRST               = 256
    WM_KEYLAST                = 264
    WM_SYNCPAINT              = 136
    WM_MOUSEACTIVATE          = 33
    WM_MOUSEMOVE              = 512
    WM_LBUTTONDOWN            = 513
    WM_LBUTTONUP              = 514
    WM_LBUTTONDBLCLK          = 515
    WM_RBUTTONDOWN            = 516
    WM_RBUTTONUP              = 517
    WM_RBUTTONDBLCLK          = 518
    WM_MBUTTONDOWN            = 519
    WM_MBUTTONUP              = 520
    WM_MBUTTONDBLCLK          = 521
    WM_MOUSEWHEEL             = 522
    WM_XBUTTONDOWN            = 523
    WM_XBUTTONUP              = 524
    WM_XBUTTONDBLCLK          = 525
    WM_MOUSEHWHEEL            = 526
    WM_MOUSEFIRST             = 512
    WM_MOUSELAST              = 526
    WM_MOUSEHOVER             = 0X2A1
    WM_MOUSELEAVE             = 0X2A3
    WM_CLIPBOARDUPDATE        = 0x031D
)

Window message constants

const (
    WA_INACTIVE    = 0
    WA_ACTIVE      = 1
    WA_CLICKACTIVE = 2
)

WM_ACTIVATE

const (
    FW_DONTCARE   = 0
    FW_THIN       = 100
    FW_EXTRALIGHT = 200
    FW_ULTRALIGHT = FW_EXTRALIGHT
    FW_LIGHT      = 300
    FW_NORMAL     = 400
    FW_REGULAR    = 400
    FW_MEDIUM     = 500
    FW_SEMIBOLD   = 600
    FW_DEMIBOLD   = FW_SEMIBOLD
    FW_BOLD       = 700
    FW_EXTRABOLD  = 800
    FW_ULTRABOLD  = FW_EXTRABOLD
    FW_HEAVY      = 900
    FW_BLACK      = FW_HEAVY
)

Font weight constants

const (
    ANSI_CHARSET        = 0
    DEFAULT_CHARSET     = 1
    SYMBOL_CHARSET      = 2
    SHIFTJIS_CHARSET    = 128
    HANGEUL_CHARSET     = 129
    HANGUL_CHARSET      = 129
    GB2312_CHARSET      = 134
    CHINESEBIG5_CHARSET = 136
    GREEK_CHARSET       = 161
    TURKISH_CHARSET     = 162
    HEBREW_CHARSET      = 177
    ARABIC_CHARSET      = 178
    BALTIC_CHARSET      = 186
    RUSSIAN_CHARSET     = 204
    THAI_CHARSET        = 222
    EASTEUROPE_CHARSET  = 238
    OEM_CHARSET         = 255
    JOHAB_CHARSET       = 130
    VIETNAMESE_CHARSET  = 163
    MAC_CHARSET         = 77
)

Charset constants

const (
    OUT_DEFAULT_PRECIS   = 0
    OUT_STRING_PRECIS    = 1
    OUT_CHARACTER_PRECIS = 2
    OUT_STROKE_PRECIS    = 3
    OUT_TT_PRECIS        = 4
    OUT_DEVICE_PRECIS    = 5
    OUT_RASTER_PRECIS    = 6
    OUT_TT_ONLY_PRECIS   = 7
    OUT_OUTLINE_PRECIS   = 8
    OUT_PS_ONLY_PRECIS   = 10
)

Font output precision constants

const (
    CLIP_DEFAULT_PRECIS   = 0
    CLIP_CHARACTER_PRECIS = 1
    CLIP_STROKE_PRECIS    = 2
    CLIP_MASK             = 15
    CLIP_LH_ANGLES        = 16
    CLIP_TT_ALWAYS        = 32
    CLIP_EMBEDDED         = 128
)

Font clipping precision constants

const (
    DEFAULT_QUALITY        = 0
    DRAFT_QUALITY          = 1
    PROOF_QUALITY          = 2
    NONANTIALIASED_QUALITY = 3
    ANTIALIASED_QUALITY    = 4
    CLEARTYPE_QUALITY      = 5
)

Font output quality constants

const (
    DEFAULT_PITCH  = 0
    FIXED_PITCH    = 1
    VARIABLE_PITCH = 2
)

Font pitch constants

const (
    FF_DECORATIVE = 80
    FF_DONTCARE   = 0
    FF_MODERN     = 48
    FF_ROMAN      = 16
    FF_SCRIPT     = 64
    FF_SWISS      = 32
)

Font family constants

const (
    DC_FIELDS            = 1
    DC_PAPERS            = 2
    DC_PAPERSIZE         = 3
    DC_MINEXTENT         = 4
    DC_MAXEXTENT         = 5
    DC_BINS              = 6
    DC_DUPLEX            = 7
    DC_SIZE              = 8
    DC_EXTRA             = 9
    DC_VERSION           = 10
    DC_DRIVER            = 11
    DC_BINNAMES          = 12
    DC_ENUMRESOLUTIONS   = 13
    DC_FILEDEPENDENCIES  = 14
    DC_TRUETYPE          = 15
    DC_PAPERNAMES        = 16
    DC_ORIENTATION       = 17
    DC_COPIES            = 18
    DC_BINADJUST         = 19
    DC_EMF_COMPLIANT     = 20
    DC_DATATYPE_PRODUCED = 21
    DC_COLLATE           = 22
    DC_MANUFACTURER      = 23
    DC_MODEL             = 24
    DC_PERSONALITY       = 25
    DC_PRINTRATE         = 26
    DC_PRINTRATEUNIT     = 27
    DC_PRINTERMEM        = 28
    DC_MEDIAREADY        = 29
    DC_STAPLE            = 30
    DC_PRINTRATEPPM      = 31
    DC_COLORDEVICE       = 32
    DC_NUP               = 33
    DC_MEDIATYPENAMES    = 34
    DC_MEDIATYPES        = 35
)

DeviceCapabilities capabilities

const (
    DRIVERVERSION   = 0
    TECHNOLOGY      = 2
    HORZSIZE        = 4
    VERTSIZE        = 6
    HORZRES         = 8
    VERTRES         = 10
    LOGPIXELSX      = 88
    LOGPIXELSY      = 90
    BITSPIXEL       = 12
    PLANES          = 14
    NUMBRUSHES      = 16
    NUMPENS         = 18
    NUMFONTS        = 22
    NUMCOLORS       = 24
    NUMMARKERS      = 20
    ASPECTX         = 40
    ASPECTY         = 42
    ASPECTXY        = 44
    PDEVICESIZE     = 26
    CLIPCAPS        = 36
    SIZEPALETTE     = 104
    NUMRESERVED     = 106
    COLORRES        = 108
    PHYSICALWIDTH   = 110
    PHYSICALHEIGHT  = 111
    PHYSICALOFFSETX = 112
    PHYSICALOFFSETY = 113
    SCALINGFACTORX  = 114
    SCALINGFACTORY  = 115
    VREFRESH        = 116
    DESKTOPHORZRES  = 118
    DESKTOPVERTRES  = 117
    BLTALIGNMENT    = 119
    SHADEBLENDCAPS  = 120
    COLORMGMTCAPS   = 121
    RASTERCAPS      = 38
    CURVECAPS       = 28
    LINECAPS        = 30
    POLYGONALCAPS   = 32
    TEXTCAPS        = 34
)

GetDeviceCaps index constants

const (
    DT_PLOTTER    = 0
    DT_RASDISPLAY = 1
    DT_RASPRINTER = 2
    DT_RASCAMERA  = 3
    DT_CHARSTREAM = 4
    DT_METAFILE   = 5
    DT_DISPFILE   = 6
)

GetDeviceCaps TECHNOLOGY constants

const (
    SB_NONE          = 0x00
    SB_CONST_ALPHA   = 0x01
    SB_PIXEL_ALPHA   = 0x02
    SB_PREMULT_ALPHA = 0x04
    SB_GRAD_RECT     = 0x10
    SB_GRAD_TRI      = 0x20
)

GetDeviceCaps SHADEBLENDCAPS constants

const (
    CM_NONE       = 0x00
    CM_DEVICE_ICM = 0x01
    CM_GAMMA_RAMP = 0x02
    CM_CMYK_COLOR = 0x04
)

GetDeviceCaps COLORMGMTCAPS constants

const (
    RC_BANDING      = 2
    RC_BITBLT       = 1
    RC_BITMAP64     = 8
    RC_DI_BITMAP    = 128
    RC_DIBTODEV     = 512
    RC_FLOODFILL    = 4096
    RC_GDI20_OUTPUT = 16
    RC_PALETTE      = 256
    RC_SCALING      = 4
    RC_STRETCHBLT   = 2048
    RC_STRETCHDIB   = 8192
    RC_DEVBITS      = 0x8000
    RC_OP_DX_OUTPUT = 0x4000
)

GetDeviceCaps RASTERCAPS constants

const (
    CC_NONE       = 0
    CC_CIRCLES    = 1
    CC_PIE        = 2
    CC_CHORD      = 4
    CC_ELLIPSES   = 8
    CC_WIDE       = 16
    CC_STYLED     = 32
    CC_WIDESTYLED = 64
    CC_INTERIORS  = 128
    CC_ROUNDRECT  = 256
)

GetDeviceCaps CURVECAPS constants

const (
    LC_NONE       = 0
    LC_POLYLINE   = 2
    LC_MARKER     = 4
    LC_POLYMARKER = 8
    LC_WIDE       = 16
    LC_STYLED     = 32
    LC_WIDESTYLED = 64
    LC_INTERIORS  = 128
)

GetDeviceCaps LINECAPS constants

const (
    PC_NONE        = 0
    PC_POLYGON     = 1
    PC_POLYPOLYGON = 256
    PC_PATHS       = 512
    PC_RECTANGLE   = 2
    PC_WINDPOLYGON = 4
    PC_SCANLINE    = 8
    PC_TRAPEZOID   = 4
    PC_WIDE        = 16
    PC_STYLED      = 32
    PC_WIDESTYLED  = 64
    PC_INTERIORS   = 128
)

GetDeviceCaps POLYGONALCAPS constants

const (
    TC_OP_CHARACTER = 1
    TC_OP_STROKE    = 2
    TC_CP_STROKE    = 4
    TC_CR_90        = 8
    TC_CR_ANY       = 16
    TC_SF_X_YINDEP  = 32
    TC_SA_DOUBLE    = 64
    TC_SA_INTEGER   = 128
    TC_SA_CONTIN    = 256
    TC_EA_DOUBLE    = 512
    TC_IA_ABLE      = 1024
    TC_UA_ABLE      = 2048
    TC_SO_ABLE      = 4096
    TC_RA_ABLE      = 8192
    TC_VA_ABLE      = 16384
    TC_RESERVED     = 32768
    TC_SCROLLBLT    = 65536
)

GetDeviceCaps TEXTCAPS constants

const (
    SS_BITMAP          = 14
    SS_BLACKFRAME      = 7
    SS_BLACKRECT       = 4
    SS_CENTER          = 1
    SS_CENTERIMAGE     = 512
    SS_EDITCONTROL     = 0x2000
    SS_ENHMETAFILE     = 15
    SS_ETCHEDFRAME     = 18
    SS_ETCHEDHORZ      = 16
    SS_ETCHEDVERT      = 17
    SS_GRAYFRAME       = 8
    SS_GRAYRECT        = 5
    SS_ICON            = 3
    SS_LEFT            = 0
    SS_LEFTNOWORDWRAP  = 0xc
    SS_NOPREFIX        = 128
    SS_NOTIFY          = 256
    SS_OWNERDRAW       = 0xd
    SS_REALSIZECONTROL = 0x040
    SS_REALSIZEIMAGE   = 0x800
    SS_RIGHT           = 2
    SS_RIGHTJUST       = 0x400
    SS_SIMPLE          = 11
    SS_SUNKEN          = 4096
    SS_WHITEFRAME      = 9
    SS_WHITERECT       = 6
    SS_USERITEM        = 10
    SS_TYPEMASK        = 0x0000001F
    SS_ENDELLIPSIS     = 0x00004000
    SS_PATHELLIPSIS    = 0x00008000
    SS_WORDELLIPSIS    = 0x0000C000
    SS_ELLIPSISMASK    = 0x0000C000
)

Static control styles

const (
    ES_LEFT        = 0x0000
    ES_CENTER      = 0x0001
    ES_RIGHT       = 0x0002
    ES_MULTILINE   = 0x0004
    ES_UPPERCASE   = 0x0008
    ES_LOWERCASE   = 0x0010
    ES_PASSWORD    = 0x0020
    ES_AUTOVSCROLL = 0x0040
    ES_AUTOHSCROLL = 0x0080
    ES_NOHIDESEL   = 0x0100
    ES_OEMCONVERT  = 0x0400
    ES_READONLY    = 0x0800
    ES_WANTRETURN  = 0x1000
    ES_NUMBER      = 0x2000
)

Edit styles

const (
    EN_SETFOCUS     = 0x0100
    EN_KILLFOCUS    = 0x0200
    EN_CHANGE       = 0x0300
    EN_UPDATE       = 0x0400
    EN_ERRSPACE     = 0x0500
    EN_MAXTEXT      = 0x0501
    EN_HSCROLL      = 0x0601
    EN_VSCROLL      = 0x0602
    EN_ALIGN_LTR_EC = 0x0700
    EN_ALIGN_RTL_EC = 0x0701
)

Edit notifications

const (
    EM_GETSEL              = 0x00B0
    EM_SETSEL              = 0x00B1
    EM_GETRECT             = 0x00B2
    EM_SETRECT             = 0x00B3
    EM_SETRECTNP           = 0x00B4
    EM_SCROLL              = 0x00B5
    EM_LINESCROLL          = 0x00B6
    EM_SCROLLCARET         = 0x00B7
    EM_GETMODIFY           = 0x00B8
    EM_SETMODIFY           = 0x00B9
    EM_GETLINECOUNT        = 0x00BA
    EM_LINEINDEX           = 0x00BB
    EM_SETHANDLE           = 0x00BC
    EM_GETHANDLE           = 0x00BD
    EM_GETTHUMB            = 0x00BE
    EM_LINELENGTH          = 0x00C1
    EM_REPLACESEL          = 0x00C2
    EM_GETLINE             = 0x00C4
    EM_LIMITTEXT           = 0x00C5
    EM_CANUNDO             = 0x00C6
    EM_UNDO                = 0x00C7
    EM_FMTLINES            = 0x00C8
    EM_LINEFROMCHAR        = 0x00C9
    EM_SETTABSTOPS         = 0x00CB
    EM_SETPASSWORDCHAR     = 0x00CC
    EM_EMPTYUNDOBUFFER     = 0x00CD
    EM_GETFIRSTVISIBLELINE = 0x00CE
    EM_SETREADONLY         = 0x00CF
    EM_SETWORDBREAKPROC    = 0x00D0
    EM_GETWORDBREAKPROC    = 0x00D1
    EM_GETPASSWORDCHAR     = 0x00D2
    EM_SETMARGINS          = 0x00D3
    EM_GETMARGINS          = 0x00D4
    EM_SETLIMITTEXT        = EM_LIMITTEXT
    EM_GETLIMITTEXT        = 0x00D5
    EM_POSFROMCHAR         = 0x00D6
    EM_CHARFROMPOS         = 0x00D7
    EM_SETIMESTATUS        = 0x00D8
    EM_GETIMESTATUS        = 0x00D9
    EM_SETCUEBANNER        = 0x1501
    EM_GETCUEBANNER        = 0x1502
)

Edit messages

const (
    CCM_FIRST            = 0x2000
    CCM_LAST             = CCM_FIRST + 0x200
    CCM_SETBKCOLOR       = 8193
    CCM_SETCOLORSCHEME   = 8194
    CCM_GETCOLORSCHEME   = 8195
    CCM_GETDROPTARGET    = 8196
    CCM_SETUNICODEFORMAT = 8197
    CCM_GETUNICODEFORMAT = 8198
    CCM_SETVERSION       = 0x2007
    CCM_GETVERSION       = 0x2008
    CCM_SETNOTIFYWINDOW  = 0x2009
    CCM_SETWINDOWTHEME   = 0x200b
    CCM_DPISCALE         = 0x200c
)
const (
    CCS_TOP           = 1
    CCS_NOMOVEY       = 2
    CCS_BOTTOM        = 3
    CCS_NORESIZE      = 4
    CCS_NOPARENTALIGN = 8
    CCS_ADJUSTABLE    = 32
    CCS_NODIVIDER     = 64
    CCS_VERT          = 128
    CCS_LEFT          = 129
    CCS_NOMOVEX       = 130
    CCS_RIGHT         = 131
)

Common controls styles

const (
    PROGRESS_CLASS  = "msctls_progress32"
    PBM_SETPOS      = WM_USER + 2
    PBM_DELTAPOS    = WM_USER + 3
    PBM_SETSTEP     = WM_USER + 4
    PBM_STEPIT      = WM_USER + 5
    PBM_SETRANGE32  = 1030
    PBM_GETRANGE    = 1031
    PBM_GETPOS      = 1032
    PBM_SETBARCOLOR = 1033
    PBM_SETBKCOLOR  = CCM_SETBKCOLOR
    PBS_SMOOTH      = 1
    PBS_VERTICAL    = 4
)

ProgressBar messages

const (
    OFN_ALLOWMULTISELECT     = 0x00000200
    OFN_CREATEPROMPT         = 0x00002000
    OFN_DONTADDTORECENT      = 0x02000000
    OFN_ENABLEHOOK           = 0x00000020
    OFN_ENABLEINCLUDENOTIFY  = 0x00400000
    OFN_ENABLESIZING         = 0x00800000
    OFN_ENABLETEMPLATE       = 0x00000040
    OFN_ENABLETEMPLATEHANDLE = 0x00000080
    OFN_EXPLORER             = 0x00080000
    OFN_EXTENSIONDIFFERENT   = 0x00000400
    OFN_FILEMUSTEXIST        = 0x00001000
    OFN_FORCESHOWHIDDEN      = 0x10000000
    OFN_HIDEREADONLY         = 0x00000004
    OFN_LONGNAMES            = 0x00200000
    OFN_NOCHANGEDIR          = 0x00000008
    OFN_NODEREFERENCELINKS   = 0x00100000
    OFN_NOLONGNAMES          = 0x00040000
    OFN_NONETWORKBUTTON      = 0x00020000
    OFN_NOREADONLYRETURN     = 0x00008000
    OFN_NOTESTFILECREATE     = 0x00010000
    OFN_NOVALIDATE           = 0x00000100
    OFN_OVERWRITEPROMPT      = 0x00000002
    OFN_PATHMUSTEXIST        = 0x00000800
    OFN_READONLY             = 0x00000001
    OFN_SHAREAWARE           = 0x00004000
    OFN_SHOWHELP             = 0x00000010
)

GetOpenFileName and GetSaveFileName flags

const (
    BIF_RETURNONLYFSDIRS    = 0x00000001
    BIF_DONTGOBELOWDOMAIN   = 0x00000002
    BIF_STATUSTEXT          = 0x00000004
    BIF_RETURNFSANCESTORS   = 0x00000008
    BIF_EDITBOX             = 0x00000010
    BIF_VALIDATE            = 0x00000020
    BIF_NEWDIALOGSTYLE      = 0x00000040
    BIF_BROWSEINCLUDEURLS   = 0x00000080
    BIF_USENEWUI            = BIF_EDITBOX | BIF_NEWDIALOGSTYLE
    BIF_UAHINT              = 0x00000100
    BIF_NONEWFOLDERBUTTON   = 0x00000200
    BIF_NOTRANSLATETARGETS  = 0x00000400
    BIF_BROWSEFORCOMPUTER   = 0x00001000
    BIF_BROWSEFORPRINTER    = 0x00002000
    BIF_BROWSEINCLUDEFILES  = 0x00004000
    BIF_SHAREABLE           = 0x00008000
    BIF_BROWSEFILEJUNCTIONS = 0x00010000
)

SHBrowseForFolder flags

const (
    MB_OK                = 0x00000000
    MB_OKCANCEL          = 0x00000001
    MB_ABORTRETRYIGNORE  = 0x00000002
    MB_YESNOCANCEL       = 0x00000003
    MB_YESNO             = 0x00000004
    MB_RETRYCANCEL       = 0x00000005
    MB_CANCELTRYCONTINUE = 0x00000006
    MB_ICONHAND          = 0x00000010
    MB_ICONQUESTION      = 0x00000020
    MB_ICONEXCLAMATION   = 0x00000030
    MB_ICONASTERISK      = 0x00000040
    MB_USERICON          = 0x00000080
    MB_ICONWARNING       = MB_ICONEXCLAMATION
    MB_ICONERROR         = MB_ICONHAND
    MB_ICONINFORMATION   = MB_ICONASTERISK
    MB_ICONSTOP          = MB_ICONHAND
    MB_DEFBUTTON1        = 0x00000000
    MB_DEFBUTTON2        = 0x00000100
    MB_DEFBUTTON3        = 0x00000200
    MB_DEFBUTTON4        = 0x00000300
)

MessageBox flags

const (
    E_INVALIDARG  = 0x80070057
    E_OUTOFMEMORY = 0x8007000E
    E_UNEXPECTED  = 0x8000FFFF
)

COM

const (
    S_OK               = 0
    S_FALSE            = 0x0001
    RPC_E_CHANGED_MODE = 0x80010106
)
const (
    SM_CXSCREEN             = 0
    SM_CYSCREEN             = 1
    SM_CXVSCROLL            = 2
    SM_CYHSCROLL            = 3
    SM_CYCAPTION            = 4
    SM_CXBORDER             = 5
    SM_CYBORDER             = 6
    SM_CXDLGFRAME           = 7
    SM_CYDLGFRAME           = 8
    SM_CYVTHUMB             = 9
    SM_CXHTHUMB             = 10
    SM_CXICON               = 11
    SM_CYICON               = 12
    SM_CXCURSOR             = 13
    SM_CYCURSOR             = 14
    SM_CYMENU               = 15
    SM_CXFULLSCREEN         = 16
    SM_CYFULLSCREEN         = 17
    SM_CYKANJIWINDOW        = 18
    SM_MOUSEPRESENT         = 19
    SM_CYVSCROLL            = 20
    SM_CXHSCROLL            = 21
    SM_DEBUG                = 22
    SM_SWAPBUTTON           = 23
    SM_RESERVED1            = 24
    SM_RESERVED2            = 25
    SM_RESERVED3            = 26
    SM_RESERVED4            = 27
    SM_CXMIN                = 28
    SM_CYMIN                = 29
    SM_CXSIZE               = 30
    SM_CYSIZE               = 31
    SM_CXFRAME              = 32
    SM_CYFRAME              = 33
    SM_CXMINTRACK           = 34
    SM_CYMINTRACK           = 35
    SM_CXDOUBLECLK          = 36
    SM_CYDOUBLECLK          = 37
    SM_CXICONSPACING        = 38
    SM_CYICONSPACING        = 39
    SM_MENUDROPALIGNMENT    = 40
    SM_PENWINDOWS           = 41
    SM_DBCSENABLED          = 42
    SM_CMOUSEBUTTONS        = 43
    SM_CXFIXEDFRAME         = SM_CXDLGFRAME
    SM_CYFIXEDFRAME         = SM_CYDLGFRAME
    SM_CXSIZEFRAME          = SM_CXFRAME
    SM_CYSIZEFRAME          = SM_CYFRAME
    SM_SECURE               = 44
    SM_CXEDGE               = 45
    SM_CYEDGE               = 46
    SM_CXMINSPACING         = 47
    SM_CYMINSPACING         = 48
    SM_CXSMICON             = 49
    SM_CYSMICON             = 50
    SM_CYSMCAPTION          = 51
    SM_CXSMSIZE             = 52
    SM_CYSMSIZE             = 53
    SM_CXMENUSIZE           = 54
    SM_CYMENUSIZE           = 55
    SM_ARRANGE              = 56
    SM_CXMINIMIZED          = 57
    SM_CYMINIMIZED          = 58
    SM_CXMAXTRACK           = 59
    SM_CYMAXTRACK           = 60
    SM_CXMAXIMIZED          = 61
    SM_CYMAXIMIZED          = 62
    SM_NETWORK              = 63
    SM_CLEANBOOT            = 67
    SM_CXDRAG               = 68
    SM_CYDRAG               = 69
    SM_SHOWSOUNDS           = 70
    SM_CXMENUCHECK          = 71
    SM_CYMENUCHECK          = 72
    SM_SLOWMACHINE          = 73
    SM_MIDEASTENABLED       = 74
    SM_MOUSEWHEELPRESENT    = 75
    SM_XVIRTUALSCREEN       = 76
    SM_YVIRTUALSCREEN       = 77
    SM_CXVIRTUALSCREEN      = 78
    SM_CYVIRTUALSCREEN      = 79
    SM_CMONITORS            = 80
    SM_SAMEDISPLAYFORMAT    = 81
    SM_IMMENABLED           = 82
    SM_CXFOCUSBORDER        = 83
    SM_CYFOCUSBORDER        = 84
    SM_TABLETPC             = 86
    SM_MEDIACENTER          = 87
    SM_STARTER              = 88
    SM_SERVERR2             = 89
    SM_CMETRICS             = 91
    SM_REMOTESESSION        = 0x1000
    SM_SHUTTINGDOWN         = 0x2000
    SM_REMOTECONTROL        = 0x2001
    SM_CARETBLINKINGENABLED = 0x2002
)

GetSystemMetrics constants

const (
    CLSCTX_INPROC_SERVER   = 1
    CLSCTX_INPROC_HANDLER  = 2
    CLSCTX_LOCAL_SERVER    = 4
    CLSCTX_INPROC_SERVER16 = 8
    CLSCTX_REMOTE_SERVER   = 16
    CLSCTX_ALL             = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER
    CLSCTX_INPROC          = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER
    CLSCTX_SERVER          = CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER
)
const (
    COINIT_APARTMENTTHREADED = 0x2
    COINIT_MULTITHREADED     = 0x0
    COINIT_DISABLE_OLE1DDE   = 0x4
    COINIT_SPEED_OVER_MEMORY = 0x8
)
const (
    DISPATCH_METHOD         = 1
    DISPATCH_PROPERTYGET    = 2
    DISPATCH_PROPERTYPUT    = 4
    DISPATCH_PROPERTYPUTREF = 8
)
const (
    CC_FASTCALL = iota
    CC_CDECL
    CC_MSCPASCAL
    CC_PASCAL = CC_MSCPASCAL
    CC_MACPASCAL
    CC_STDCALL
    CC_FPFASTCALL
    CC_SYSCALL
    CC_MPWCDECL
    CC_MPWPASCAL
    CC_MAX = CC_MPWPASCAL
)
const (
    VT_EMPTY           = 0x0
    VT_NULL            = 0x1
    VT_I2              = 0x2
    VT_I4              = 0x3
    VT_R4              = 0x4
    VT_R8              = 0x5
    VT_CY              = 0x6
    VT_DATE            = 0x7
    VT_BSTR            = 0x8
    VT_DISPATCH        = 0x9
    VT_ERROR           = 0xa
    VT_BOOL            = 0xb
    VT_VARIANT         = 0xc
    VT_UNKNOWN         = 0xd
    VT_DECIMAL         = 0xe
    VT_I1              = 0x10
    VT_UI1             = 0x11
    VT_UI2             = 0x12
    VT_UI4             = 0x13
    VT_I8              = 0x14
    VT_UI8             = 0x15
    VT_INT             = 0x16
    VT_UINT            = 0x17
    VT_VOID            = 0x18
    VT_HRESULT         = 0x19
    VT_PTR             = 0x1a
    VT_SAFEARRAY       = 0x1b
    VT_CARRAY          = 0x1c
    VT_USERDEFINED     = 0x1d
    VT_LPSTR           = 0x1e
    VT_LPWSTR          = 0x1f
    VT_RECORD          = 0x24
    VT_INT_PTR         = 0x25
    VT_UINT_PTR        = 0x26
    VT_FILETIME        = 0x40
    VT_BLOB            = 0x41
    VT_STREAM          = 0x42
    VT_STORAGE         = 0x43
    VT_STREAMED_OBJECT = 0x44
    VT_STORED_OBJECT   = 0x45
    VT_BLOB_OBJECT     = 0x46
    VT_CF              = 0x47
    VT_CLSID           = 0x48
    VT_BSTR_BLOB       = 0xfff
    VT_VECTOR          = 0x1000
    VT_ARRAY           = 0x2000
    VT_BYREF           = 0x4000
    VT_RESERVED        = 0x8000
    VT_ILLEGAL         = 0xffff
    VT_ILLEGALMASKED   = 0xfff
    VT_TYPEMASK        = 0xfff
)
const (
    DISPID_UNKNOWN     = -1
    DISPID_VALUE       = 0
    DISPID_PROPERTYPUT = -3
    DISPID_NEWENUM     = -4
    DISPID_EVALUATE    = -5
    DISPID_CONSTRUCTOR = -6
    DISPID_DESTRUCTOR  = -7
    DISPID_COLLECT     = -8
)
const (
    MONITOR_DEFAULTTONULL    = 0x00000000
    MONITOR_DEFAULTTOPRIMARY = 0x00000001
    MONITOR_DEFAULTTONEAREST = 0x00000002

    MONITORINFOF_PRIMARY = 0x00000001
)
const (
    CCHDEVICENAME = 32
    CCHFORMNAME   = 32
)
const (
    IDOK       = 1
    IDCANCEL   = 2
    IDABORT    = 3
    IDRETRY    = 4
    IDIGNORE   = 5
    IDYES      = 6
    IDNO       = 7
    IDCLOSE    = 8
    IDHELP     = 9
    IDTRYAGAIN = 10
    IDCONTINUE = 11
    IDTIMEOUT  = 32000
)
const (
    NM_FIRST           = 0
    NM_OUTOFMEMORY     = NM_FIRST - 1
    NM_CLICK           = NM_FIRST - 2
    NM_DBLCLK          = NM_FIRST - 3
    NM_RETURN          = NM_FIRST - 4
    NM_RCLICK          = NM_FIRST - 5
    NM_RDBLCLK         = NM_FIRST - 6
    NM_SETFOCUS        = NM_FIRST - 7
    NM_KILLFOCUS       = NM_FIRST - 8
    NM_CUSTOMDRAW      = NM_FIRST - 12
    NM_HOVER           = NM_FIRST - 13
    NM_NCHITTEST       = NM_FIRST - 14
    NM_KEYDOWN         = NM_FIRST - 15
    NM_RELEASEDCAPTURE = NM_FIRST - 16
    NM_SETCURSOR       = NM_FIRST - 17
    NM_CHAR            = NM_FIRST - 18
    NM_TOOLTIPSCREATED = NM_FIRST - 19
    NM_LAST            = NM_FIRST - 99
)

Generic WM_NOTIFY notification codes

const (
    LVM_FIRST                    = 0x1000
    LVM_GETITEMCOUNT             = LVM_FIRST + 4
    LVM_SETIMAGELIST             = LVM_FIRST + 3
    LVM_GETIMAGELIST             = LVM_FIRST + 2
    LVM_GETITEM                  = LVM_FIRST + 75
    LVM_SETITEM                  = LVM_FIRST + 76
    LVM_INSERTITEM               = LVM_FIRST + 77
    LVM_DELETEITEM               = LVM_FIRST + 8
    LVM_DELETEALLITEMS           = LVM_FIRST + 9
    LVM_GETCALLBACKMASK          = LVM_FIRST + 10
    LVM_SETCALLBACKMASK          = LVM_FIRST + 11
    LVM_SETUNICODEFORMAT         = CCM_SETUNICODEFORMAT
    LVM_GETNEXTITEM              = LVM_FIRST + 12
    LVM_FINDITEM                 = LVM_FIRST + 83
    LVM_GETITEMRECT              = LVM_FIRST + 14
    LVM_GETSTRINGWIDTH           = LVM_FIRST + 87
    LVM_HITTEST                  = LVM_FIRST + 18
    LVM_ENSUREVISIBLE            = LVM_FIRST + 19
    LVM_SCROLL                   = LVM_FIRST + 20
    LVM_REDRAWITEMS              = LVM_FIRST + 21
    LVM_ARRANGE                  = LVM_FIRST + 22
    LVM_EDITLABEL                = LVM_FIRST + 118
    LVM_GETEDITCONTROL           = LVM_FIRST + 24
    LVM_GETCOLUMN                = LVM_FIRST + 95
    LVM_SETCOLUMN                = LVM_FIRST + 96
    LVM_INSERTCOLUMN             = LVM_FIRST + 97
    LVM_DELETECOLUMN             = LVM_FIRST + 28
    LVM_GETCOLUMNWIDTH           = LVM_FIRST + 29
    LVM_SETCOLUMNWIDTH           = LVM_FIRST + 30
    LVM_GETHEADER                = LVM_FIRST + 31
    LVM_CREATEDRAGIMAGE          = LVM_FIRST + 33
    LVM_GETVIEWRECT              = LVM_FIRST + 34
    LVM_GETTEXTCOLOR             = LVM_FIRST + 35
    LVM_SETTEXTCOLOR             = LVM_FIRST + 36
    LVM_GETTEXTBKCOLOR           = LVM_FIRST + 37
    LVM_SETTEXTBKCOLOR           = LVM_FIRST + 38
    LVM_GETTOPINDEX              = LVM_FIRST + 39
    LVM_GETCOUNTPERPAGE          = LVM_FIRST + 40
    LVM_GETORIGIN                = LVM_FIRST + 41
    LVM_UPDATE                   = LVM_FIRST + 42
    LVM_SETITEMSTATE             = LVM_FIRST + 43
    LVM_GETITEMSTATE             = LVM_FIRST + 44
    LVM_GETITEMTEXT              = LVM_FIRST + 115
    LVM_SETITEMTEXT              = LVM_FIRST + 116
    LVM_SETITEMCOUNT             = LVM_FIRST + 47
    LVM_SORTITEMS                = LVM_FIRST + 48
    LVM_SETITEMPOSITION32        = LVM_FIRST + 49
    LVM_GETSELECTEDCOUNT         = LVM_FIRST + 50
    LVM_GETITEMSPACING           = LVM_FIRST + 51
    LVM_GETISEARCHSTRING         = LVM_FIRST + 117
    LVM_SETICONSPACING           = LVM_FIRST + 53
    LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54
    LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 55
    LVM_GETSUBITEMRECT           = LVM_FIRST + 56
    LVM_SUBITEMHITTEST           = LVM_FIRST + 57
    LVM_SETCOLUMNORDERARRAY      = LVM_FIRST + 58
    LVM_GETCOLUMNORDERARRAY      = LVM_FIRST + 59
    LVM_SETHOTITEM               = LVM_FIRST + 60
    LVM_GETHOTITEM               = LVM_FIRST + 61
    LVM_SETHOTCURSOR             = LVM_FIRST + 62
    LVM_GETHOTCURSOR             = LVM_FIRST + 63
    LVM_APPROXIMATEVIEWRECT      = LVM_FIRST + 64
    LVM_SETWORKAREAS             = LVM_FIRST + 65
    LVM_GETWORKAREAS             = LVM_FIRST + 70
    LVM_GETNUMBEROFWORKAREAS     = LVM_FIRST + 73
    LVM_GETSELECTIONMARK         = LVM_FIRST + 66
    LVM_SETSELECTIONMARK         = LVM_FIRST + 67
    LVM_SETHOVERTIME             = LVM_FIRST + 71
    LVM_GETHOVERTIME             = LVM_FIRST + 72
    LVM_SETTOOLTIPS              = LVM_FIRST + 74
    LVM_GETTOOLTIPS              = LVM_FIRST + 78
    LVM_SORTITEMSEX              = LVM_FIRST + 81
    LVM_SETBKIMAGE               = LVM_FIRST + 138
    LVM_GETBKIMAGE               = LVM_FIRST + 139
    LVM_SETSELECTEDCOLUMN        = LVM_FIRST + 140
    LVM_SETVIEW                  = LVM_FIRST + 142
    LVM_GETVIEW                  = LVM_FIRST + 143
    LVM_INSERTGROUP              = LVM_FIRST + 145
    LVM_SETGROUPINFO             = LVM_FIRST + 147
    LVM_GETGROUPINFO             = LVM_FIRST + 149
    LVM_REMOVEGROUP              = LVM_FIRST + 150
    LVM_MOVEGROUP                = LVM_FIRST + 151
    LVM_GETGROUPCOUNT            = LVM_FIRST + 152
    LVM_GETGROUPINFOBYINDEX      = LVM_FIRST + 153
    LVM_MOVEITEMTOGROUP          = LVM_FIRST + 154
    LVM_GETGROUPRECT             = LVM_FIRST + 98
    LVM_SETGROUPMETRICS          = LVM_FIRST + 155
    LVM_GETGROUPMETRICS          = LVM_FIRST + 156
    LVM_ENABLEGROUPVIEW          = LVM_FIRST + 157
    LVM_SORTGROUPS               = LVM_FIRST + 158
    LVM_INSERTGROUPSORTED        = LVM_FIRST + 159
    LVM_REMOVEALLGROUPS          = LVM_FIRST + 160
    LVM_HASGROUP                 = LVM_FIRST + 161
    LVM_GETGROUPSTATE            = LVM_FIRST + 92
    LVM_GETFOCUSEDGROUP          = LVM_FIRST + 93
    LVM_SETTILEVIEWINFO          = LVM_FIRST + 162
    LVM_GETTILEVIEWINFO          = LVM_FIRST + 163
    LVM_SETTILEINFO              = LVM_FIRST + 164
    LVM_GETTILEINFO              = LVM_FIRST + 165
    LVM_SETINSERTMARK            = LVM_FIRST + 166
    LVM_GETINSERTMARK            = LVM_FIRST + 167
    LVM_INSERTMARKHITTEST        = LVM_FIRST + 168
    LVM_GETINSERTMARKRECT        = LVM_FIRST + 169
    LVM_SETINSERTMARKCOLOR       = LVM_FIRST + 170
    LVM_GETINSERTMARKCOLOR       = LVM_FIRST + 171
    LVM_SETINFOTIP               = LVM_FIRST + 173
    LVM_GETSELECTEDCOLUMN        = LVM_FIRST + 174
    LVM_ISGROUPVIEWENABLED       = LVM_FIRST + 175
    LVM_GETOUTLINECOLOR          = LVM_FIRST + 176
    LVM_SETOUTLINECOLOR          = LVM_FIRST + 177
    LVM_CANCELEDITLABEL          = LVM_FIRST + 179
    LVM_MAPINDEXTOID             = LVM_FIRST + 180
    LVM_MAPIDTOINDEX             = LVM_FIRST + 181
    LVM_ISITEMVISIBLE            = LVM_FIRST + 182
    LVM_GETNEXTITEMINDEX         = LVM_FIRST + 211
)

ListView messages

const (
    LVN_FIRST = -100

    LVN_ITEMCHANGING      = LVN_FIRST - 0
    LVN_ITEMCHANGED       = LVN_FIRST - 1
    LVN_INSERTITEM        = LVN_FIRST - 2
    LVN_DELETEITEM        = LVN_FIRST - 3
    LVN_DELETEALLITEMS    = LVN_FIRST - 4
    LVN_BEGINLABELEDITA   = LVN_FIRST - 5
    LVN_BEGINLABELEDITW   = LVN_FIRST - 75
    LVN_ENDLABELEDITA     = LVN_FIRST - 6
    LVN_ENDLABELEDITW     = LVN_FIRST - 76
    LVN_COLUMNCLICK       = LVN_FIRST - 8
    LVN_BEGINDRAG         = LVN_FIRST - 9
    LVN_BEGINRDRAG        = LVN_FIRST - 11
    LVN_ODCACHEHINT       = LVN_FIRST - 13
    LVN_ODFINDITEMA       = LVN_FIRST - 52
    LVN_ODFINDITEMW       = LVN_FIRST - 79
    LVN_ITEMACTIVATE      = LVN_FIRST - 14
    LVN_ODSTATECHANGED    = LVN_FIRST - 15
    LVN_HOTTRACK          = LVN_FIRST - 21
    LVN_GETDISPINFO       = LVN_FIRST - 77
    LVN_SETDISPINFO       = LVN_FIRST - 78
    LVN_KEYDOWN           = LVN_FIRST - 55
    LVN_MARQUEEBEGIN      = LVN_FIRST - 56
    LVN_GETINFOTIP        = LVN_FIRST - 58
    LVN_INCREMENTALSEARCH = LVN_FIRST - 63
    LVN_BEGINSCROLL       = LVN_FIRST - 80
    LVN_ENDSCROLL         = LVN_FIRST - 81
)

ListView notifications

const (
    LVNI_ALL         = 0
    LVNI_FOCUSED     = 1
    LVNI_SELECTED    = 2
    LVNI_CUT         = 4
    LVNI_DROPHILITED = 8
    LVNI_ABOVE       = 256
    LVNI_BELOW       = 512
    LVNI_TOLEFT      = 1024
    LVNI_TORIGHT     = 2048
)

ListView LVNI constants

const (
    LVS_ICON            = 0x0000
    LVS_REPORT          = 0x0001
    LVS_SMALLICON       = 0x0002
    LVS_LIST            = 0x0003
    LVS_TYPEMASK        = 0x0003
    LVS_SINGLESEL       = 0x0004
    LVS_SHOWSELALWAYS   = 0x0008
    LVS_SORTASCENDING   = 0x0010
    LVS_SORTDESCENDING  = 0x0020
    LVS_SHAREIMAGELISTS = 0x0040
    LVS_NOLABELWRAP     = 0x0080
    LVS_AUTOARRANGE     = 0x0100
    LVS_EDITLABELS      = 0x0200
    LVS_OWNERDATA       = 0x1000
    LVS_NOSCROLL        = 0x2000
    LVS_TYPESTYLEMASK   = 0xfc00
    LVS_ALIGNTOP        = 0x0000
    LVS_ALIGNLEFT       = 0x0800
    LVS_ALIGNMASK       = 0x0c00
    LVS_OWNERDRAWFIXED  = 0x0400
    LVS_NOCOLUMNHEADER  = 0x4000
    LVS_NOSORTHEADER    = 0x8000
)

ListView styles

const (
    LVS_EX_GRIDLINES        = 0x00000001
    LVS_EX_SUBITEMIMAGES    = 0x00000002
    LVS_EX_CHECKBOXES       = 0x00000004
    LVS_EX_TRACKSELECT      = 0x00000008
    LVS_EX_HEADERDRAGDROP   = 0x00000010
    LVS_EX_FULLROWSELECT    = 0x00000020
    LVS_EX_ONECLICKACTIVATE = 0x00000040
    LVS_EX_TWOCLICKACTIVATE = 0x00000080
    LVS_EX_FLATSB           = 0x00000100
    LVS_EX_REGIONAL         = 0x00000200
    LVS_EX_INFOTIP          = 0x00000400
    LVS_EX_UNDERLINEHOT     = 0x00000800
    LVS_EX_UNDERLINECOLD    = 0x00001000
    LVS_EX_MULTIWORKAREAS   = 0x00002000
    LVS_EX_LABELTIP         = 0x00004000
    LVS_EX_BORDERSELECT     = 0x00008000
    LVS_EX_DOUBLEBUFFER     = 0x00010000
    LVS_EX_HIDELABELS       = 0x00020000
    LVS_EX_SINGLEROW        = 0x00040000
    LVS_EX_SNAPTOGRID       = 0x00080000
    LVS_EX_SIMPLESELECT     = 0x00100000
)

ListView extended styles

const (
    LVCF_FMT     = 0x0001
    LVCF_WIDTH   = 0x0002
    LVCF_TEXT    = 0x0004
    LVCF_SUBITEM = 0x0008
    LVCF_IMAGE   = 0x0010
    LVCF_ORDER   = 0x0020
)

ListView column flags

const (
    LVCFMT_LEFT            = 0x0000
    LVCFMT_RIGHT           = 0x0001
    LVCFMT_CENTER          = 0x0002
    LVCFMT_JUSTIFYMASK     = 0x0003
    LVCFMT_IMAGE           = 0x0800
    LVCFMT_BITMAP_ON_RIGHT = 0x1000
    LVCFMT_COL_HAS_IMAGES  = 0x8000
)

ListView column format constants

const (
    LVIF_TEXT        = 0x00000001
    LVIF_IMAGE       = 0x00000002
    LVIF_PARAM       = 0x00000004
    LVIF_STATE       = 0x00000008
    LVIF_INDENT      = 0x00000010
    LVIF_NORECOMPUTE = 0x00000800
    LVIF_GROUPID     = 0x00000100
    LVIF_COLUMNS     = 0x00000200
)

ListView item flags

const (
    LVIS_FOCUSED        = 1
    LVIS_SELECTED       = 2
    LVIS_CUT            = 4
    LVIS_DROPHILITED    = 8
    LVIS_OVERLAYMASK    = 0xF00
    LVIS_STATEIMAGEMASK = 0xF000
)

ListView item states

const (
    LVHT_NOWHERE         = 0x00000001
    LVHT_ONITEMICON      = 0x00000002
    LVHT_ONITEMLABEL     = 0x00000004
    LVHT_ONITEMSTATEICON = 0x00000008
    LVHT_ONITEM          = LVHT_ONITEMICON | LVHT_ONITEMLABEL | LVHT_ONITEMSTATEICON

    LVHT_ABOVE   = 0x00000008
    LVHT_BELOW   = 0x00000010
    LVHT_TORIGHT = 0x00000020
    LVHT_TOLEFT  = 0x00000040
)

ListView hit test constants

const (
    LVSIL_NORMAL      = 0
    LVSIL_SMALL       = 1
    LVSIL_STATE       = 2
    LVSIL_GROUPHEADER = 3
)

ListView image list types

const (
    ICC_LISTVIEW_CLASSES   = 1
    ICC_TREEVIEW_CLASSES   = 2
    ICC_BAR_CLASSES        = 4
    ICC_TAB_CLASSES        = 8
    ICC_UPDOWN_CLASS       = 16
    ICC_PROGRESS_CLASS     = 32
    ICC_HOTKEY_CLASS       = 64
    ICC_ANIMATE_CLASS      = 128
    ICC_WIN95_CLASSES      = 255
    ICC_DATE_CLASSES       = 256
    ICC_USEREX_CLASSES     = 512
    ICC_COOL_CLASSES       = 1024
    ICC_INTERNET_CLASSES   = 2048
    ICC_PAGESCROLLER_CLASS = 4096
    ICC_NATIVEFNTCTL_CLASS = 8192
    INFOTIPSIZE            = 1024
    ICC_STANDARD_CLASSES   = 0x00004000
    ICC_LINK_CLASS         = 0x00008000
)

InitCommonControlsEx flags

const (
    DLGC_WANTARROWS      = 0x0001
    DLGC_WANTTAB         = 0x0002
    DLGC_WANTALLKEYS     = 0x0004
    DLGC_WANTMESSAGE     = 0x0004
    DLGC_HASSETSEL       = 0x0008
    DLGC_DEFPUSHBUTTON   = 0x0010
    DLGC_UNDEFPUSHBUTTON = 0x0020
    DLGC_RADIOBUTTON     = 0x0040
    DLGC_WANTCHARS       = 0x0080
    DLGC_STATIC          = 0x0100
    DLGC_BUTTON          = 0x2000
)

Dialog Codes

const (
    DWL_MSGRESULT = 0
    DWL_DLGPROC   = 4
    DWL_USER      = 8
)

Get/SetWindowWord/Long offsets for use with WC_DIALOG windows

const (
    PM_NOREMOVE = 0x000
    PM_REMOVE   = 0x001
    PM_NOYIELD  = 0x002
)

PeekMessage wRemoveMsg value

const (
    ILC_MASK             = 0x00000001
    ILC_COLOR            = 0x00000000
    ILC_COLORDDB         = 0x000000FE
    ILC_COLOR4           = 0x00000004
    ILC_COLOR8           = 0x00000008
    ILC_COLOR16          = 0x00000010
    ILC_COLOR24          = 0x00000018
    ILC_COLOR32          = 0x00000020
    ILC_PALETTE          = 0x00000800
    ILC_MIRROR           = 0x00002000
    ILC_PERITEMMIRROR    = 0x00008000
    ILC_ORIGINALSIZE     = 0x00010000
    ILC_HIGHQUALITYSCALE = 0x00020000
)

ImageList flags

const (
    KF_EXTENDED = 0x0100
    KF_DLGMODE  = 0x0800
    KF_MENUMODE = 0x1000
    KF_ALTDOWN  = 0x2000
    KF_REPEAT   = 0x4000
    KF_UP       = 0x8000
)

Keystroke Message Flags

const (
    VK_LBUTTON             = 0x01
    VK_RBUTTON             = 0x02
    VK_CANCEL              = 0x03
    VK_MBUTTON             = 0x04
    VK_XBUTTON1            = 0x05
    VK_XBUTTON2            = 0x06
    VK_BACK                = 0x08
    VK_TAB                 = 0x09
    VK_CLEAR               = 0x0C
    VK_RETURN              = 0x0D
    VK_SHIFT               = 0x10
    VK_CONTROL             = 0x11
    VK_MENU                = 0x12
    VK_PAUSE               = 0x13
    VK_CAPITAL             = 0x14
    VK_KANA                = 0x15
    VK_HANGEUL             = 0x15
    VK_HANGUL              = 0x15
    VK_JUNJA               = 0x17
    VK_FINAL               = 0x18
    VK_HANJA               = 0x19
    VK_KANJI               = 0x19
    VK_ESCAPE              = 0x1B
    VK_CONVERT             = 0x1C
    VK_NONCONVERT          = 0x1D
    VK_ACCEPT              = 0x1E
    VK_MODECHANGE          = 0x1F
    VK_SPACE               = 0x20
    VK_PRIOR               = 0x21
    VK_NEXT                = 0x22
    VK_END                 = 0x23
    VK_HOME                = 0x24
    VK_LEFT                = 0x25
    VK_UP                  = 0x26
    VK_RIGHT               = 0x27
    VK_DOWN                = 0x28
    VK_SELECT              = 0x29
    VK_PRINT               = 0x2A
    VK_EXECUTE             = 0x2B
    VK_SNAPSHOT            = 0x2C
    VK_INSERT              = 0x2D
    VK_DELETE              = 0x2E
    VK_HELP                = 0x2F
    VK_LWIN                = 0x5B
    VK_RWIN                = 0x5C
    VK_APPS                = 0x5D
    VK_SLEEP               = 0x5F
    VK_NUMPAD0             = 0x60
    VK_NUMPAD1             = 0x61
    VK_NUMPAD2             = 0x62
    VK_NUMPAD3             = 0x63
    VK_NUMPAD4             = 0x64
    VK_NUMPAD5             = 0x65
    VK_NUMPAD6             = 0x66
    VK_NUMPAD7             = 0x67
    VK_NUMPAD8             = 0x68
    VK_NUMPAD9             = 0x69
    VK_MULTIPLY            = 0x6A
    VK_ADD                 = 0x6B
    VK_SEPARATOR           = 0x6C
    VK_SUBTRACT            = 0x6D
    VK_DECIMAL             = 0x6E
    VK_DIVIDE              = 0x6F
    VK_F1                  = 0x70
    VK_F2                  = 0x71
    VK_F3                  = 0x72
    VK_F4                  = 0x73
    VK_F5                  = 0x74
    VK_F6                  = 0x75
    VK_F7                  = 0x76
    VK_F8                  = 0x77
    VK_F9                  = 0x78
    VK_F10                 = 0x79
    VK_F11                 = 0x7A
    VK_F12                 = 0x7B
    VK_F13                 = 0x7C
    VK_F14                 = 0x7D
    VK_F15                 = 0x7E
    VK_F16                 = 0x7F
    VK_F17                 = 0x80
    VK_F18                 = 0x81
    VK_F19                 = 0x82
    VK_F20                 = 0x83
    VK_F21                 = 0x84
    VK_F22                 = 0x85
    VK_F23                 = 0x86
    VK_F24                 = 0x87
    VK_NUMLOCK             = 0x90
    VK_SCROLL              = 0x91
    VK_OEM_NEC_EQUAL       = 0x92
    VK_OEM_FJ_JISHO        = 0x92
    VK_OEM_FJ_MASSHOU      = 0x93
    VK_OEM_FJ_TOUROKU      = 0x94
    VK_OEM_FJ_LOYA         = 0x95
    VK_OEM_FJ_ROYA         = 0x96
    VK_LSHIFT              = 0xA0
    VK_RSHIFT              = 0xA1
    VK_LCONTROL            = 0xA2
    VK_RCONTROL            = 0xA3
    VK_LMENU               = 0xA4
    VK_RMENU               = 0xA5
    VK_BROWSER_BACK        = 0xA6
    VK_BROWSER_FORWARD     = 0xA7
    VK_BROWSER_REFRESH     = 0xA8
    VK_BROWSER_STOP        = 0xA9
    VK_BROWSER_SEARCH      = 0xAA
    VK_BROWSER_FAVORITES   = 0xAB
    VK_BROWSER_HOME        = 0xAC
    VK_VOLUME_MUTE         = 0xAD
    VK_VOLUME_DOWN         = 0xAE
    VK_VOLUME_UP           = 0xAF
    VK_MEDIA_NEXT_TRACK    = 0xB0
    VK_MEDIA_PREV_TRACK    = 0xB1
    VK_MEDIA_STOP          = 0xB2
    VK_MEDIA_PLAY_PAUSE    = 0xB3
    VK_LAUNCH_MAIL         = 0xB4
    VK_LAUNCH_MEDIA_SELECT = 0xB5
    VK_LAUNCH_APP1         = 0xB6
    VK_LAUNCH_APP2         = 0xB7
    VK_OEM_1               = 0xBA
    VK_OEM_PLUS            = 0xBB
    VK_OEM_COMMA           = 0xBC
    VK_OEM_MINUS           = 0xBD
    VK_OEM_PERIOD          = 0xBE
    VK_OEM_2               = 0xBF
    VK_OEM_3               = 0xC0
    VK_OEM_4               = 0xDB
    VK_OEM_5               = 0xDC
    VK_OEM_6               = 0xDD
    VK_OEM_7               = 0xDE
    VK_OEM_8               = 0xDF
    VK_OEM_AX              = 0xE1
    VK_OEM_102             = 0xE2
    VK_ICO_HELP            = 0xE3
    VK_ICO_00              = 0xE4
    VK_PROCESSKEY          = 0xE5
    VK_ICO_CLEAR           = 0xE6
    VK_PACKET              = 0xE7
    VK_OEM_RESET           = 0xE9
    VK_OEM_JUMP            = 0xEA
    VK_OEM_PA1             = 0xEB
    VK_OEM_PA2             = 0xEC
    VK_OEM_PA3             = 0xED
    VK_OEM_WSCTRL          = 0xEE
    VK_OEM_CUSEL           = 0xEF
    VK_OEM_ATTN            = 0xF0
    VK_OEM_FINISH          = 0xF1
    VK_OEM_COPY            = 0xF2
    VK_OEM_AUTO            = 0xF3
    VK_OEM_ENLW            = 0xF4
    VK_OEM_BACKTAB         = 0xF5
    VK_ATTN                = 0xF6
    VK_CRSEL               = 0xF7
    VK_EXSEL               = 0xF8
    VK_EREOF               = 0xF9
    VK_PLAY                = 0xFA
    VK_ZOOM                = 0xFB
    VK_NONAME              = 0xFC
    VK_PA1                 = 0xFD
    VK_OEM_CLEAR           = 0xFE
)

Virtual-Key Codes

const (
    REG_NONE                       = 0
    REG_SZ                         = 1
    REG_EXPAND_SZ                  = 2
    REG_BINARY                     = 3
    REG_DWORD                      = 4
    REG_DWORD_LITTLE_ENDIAN        = 4
    REG_DWORD_BIG_ENDIAN           = 5
    REG_LINK                       = 6
    REG_MULTI_SZ                   = 7
    REG_RESOURCE_LIST              = 8
    REG_FULL_RESOURCE_DESCRIPTOR   = 9
    REG_RESOURCE_REQUIREMENTS_LIST = 10
    REG_QWORD                      = 11
    REG_QWORD_LITTLE_ENDIAN        = 11
)

Registry Value Types

const (
    TTS_ALWAYSTIP      = 0x01
    TTS_NOPREFIX       = 0x02
    TTS_NOANIMATE      = 0x10
    TTS_NOFADE         = 0x20
    TTS_BALLOON        = 0x40
    TTS_CLOSE          = 0x80
    TTS_USEVISUALSTYLE = 0x100
)

Tooltip styles

const (
    TTM_ACTIVATE        = (WM_USER + 1)
    TTM_SETDELAYTIME    = (WM_USER + 3)
    TTM_ADDTOOL         = (WM_USER + 50)
    TTM_DELTOOL         = (WM_USER + 51)
    TTM_NEWTOOLRECT     = (WM_USER + 52)
    TTM_RELAYEVENT      = (WM_USER + 7)
    TTM_GETTOOLINFO     = (WM_USER + 53)
    TTM_SETTOOLINFO     = (WM_USER + 54)
    TTM_HITTEST         = (WM_USER + 55)
    TTM_GETTEXT         = (WM_USER + 56)
    TTM_UPDATETIPTEXT   = (WM_USER + 57)
    TTM_GETTOOLCOUNT    = (WM_USER + 13)
    TTM_ENUMTOOLS       = (WM_USER + 58)
    TTM_GETCURRENTTOOL  = (WM_USER + 59)
    TTM_WINDOWFROMPOINT = (WM_USER + 16)
    TTM_TRACKACTIVATE   = (WM_USER + 17)
    TTM_TRACKPOSITION   = (WM_USER + 18)
    TTM_SETTIPBKCOLOR   = (WM_USER + 19)
    TTM_SETTIPTEXTCOLOR = (WM_USER + 20)
    TTM_GETDELAYTIME    = (WM_USER + 21)
    TTM_GETTIPBKCOLOR   = (WM_USER + 22)
    TTM_GETTIPTEXTCOLOR = (WM_USER + 23)
    TTM_SETMAXTIPWIDTH  = (WM_USER + 24)
    TTM_GETMAXTIPWIDTH  = (WM_USER + 25)
    TTM_SETMARGIN       = (WM_USER + 26)
    TTM_GETMARGIN       = (WM_USER + 27)
    TTM_POP             = (WM_USER + 28)
    TTM_UPDATE          = (WM_USER + 29)
    TTM_GETBUBBLESIZE   = (WM_USER + 30)
    TTM_ADJUSTRECT      = (WM_USER + 31)
    TTM_SETTITLE        = (WM_USER + 33)
    TTM_POPUP           = (WM_USER + 34)
    TTM_GETTITLE        = (WM_USER + 35)
)

Tooltip messages

const (
    TTI_NONE          = 0
    TTI_INFO          = 1
    TTI_WARNING       = 2
    TTI_ERROR         = 3
    TTI_INFO_LARGE    = 4
    TTI_WARNING_LARGE = 5
    TTI_ERROR_LARGE   = 6
)

Tooltip icons

const (
    TTN_FIRST       = -520
    TTN_LAST        = -549
    TTN_GETDISPINFO = (TTN_FIRST - 10)
    TTN_SHOW        = (TTN_FIRST - 1)
    TTN_POP         = (TTN_FIRST - 2)
    TTN_LINKCLICK   = (TTN_FIRST - 3)
    TTN_NEEDTEXT    = TTN_GETDISPINFO
)

Tooltip notifications

const (
    TTF_IDISHWND    = 0x0001
    TTF_CENTERTIP   = 0x0002
    TTF_RTLREADING  = 0x0004
    TTF_SUBCLASS    = 0x0010
    TTF_TRACK       = 0x0020
    TTF_ABSOLUTE    = 0x0080
    TTF_TRANSPARENT = 0x0100
    TTF_PARSELINKS  = 0x1000
    TTF_DI_SETITEM  = 0x8000
)
const (
    SWP_NOSIZE         = 0x0001
    SWP_NOMOVE         = 0x0002
    SWP_NOZORDER       = 0x0004
    SWP_NOREDRAW       = 0x0008
    SWP_NOACTIVATE     = 0x0010
    SWP_FRAMECHANGED   = 0x0020
    SWP_SHOWWINDOW     = 0x0040
    SWP_HIDEWINDOW     = 0x0080
    SWP_NOCOPYBITS     = 0x0100
    SWP_NOOWNERZORDER  = 0x0200
    SWP_NOSENDCHANGING = 0x0400
    SWP_DRAWFRAME      = SWP_FRAMECHANGED
    SWP_NOREPOSITION   = SWP_NOOWNERZORDER
    SWP_DEFERERASE     = 0x2000
    SWP_ASYNCWINDOWPOS = 0x4000
)
const (
    HWND_BROADCAST = HWND(0xFFFF)
    HWND_BOTTOM    = HWND(1)
    HWND_NOTOPMOST = ^HWND(1) // -2
    HWND_TOP       = HWND(0)
    HWND_TOPMOST   = ^HWND(0) // -1
    HWND_DESKTOP   = HWND(0)
    HWND_MESSAGE   = ^HWND(2) // -3
)

Predefined window handles

const (
    PS_COSMETIC  = 0x00000000
    PS_GEOMETRIC = 0x00010000
    PS_TYPE_MASK = 0x000F0000
)

Pen types

const (
    PS_SOLID       = 0
    PS_DASH        = 1
    PS_DOT         = 2
    PS_DASHDOT     = 3
    PS_DASHDOTDOT  = 4
    PS_NULL        = 5
    PS_INSIDEFRAME = 6
    PS_USERSTYLE   = 7
    PS_ALTERNATE   = 8
    PS_STYLE_MASK  = 0x0000000F
)

Pen styles

const (
    PS_ENDCAP_ROUND  = 0x00000000
    PS_ENDCAP_SQUARE = 0x00000100
    PS_ENDCAP_FLAT   = 0x00000200
    PS_ENDCAP_MASK   = 0x00000F00
)

Pen cap types

const (
    PS_JOIN_ROUND = 0x00000000
    PS_JOIN_BEVEL = 0x00001000
    PS_JOIN_MITER = 0x00002000
    PS_JOIN_MASK  = 0x0000F000
)

Pen join types

const (
    HS_HORIZONTAL = 0
    HS_VERTICAL   = 1
    HS_FDIAGONAL  = 2
    HS_BDIAGONAL  = 3
    HS_CROSS      = 4
    HS_DIAGCROSS  = 5
)

Hatch styles

const (
    WHITE_BRUSH         = 0
    LTGRAY_BRUSH        = 1
    GRAY_BRUSH          = 2
    DKGRAY_BRUSH        = 3
    BLACK_BRUSH         = 4
    NULL_BRUSH          = 5
    HOLLOW_BRUSH        = NULL_BRUSH
    WHITE_PEN           = 6
    BLACK_PEN           = 7
    NULL_PEN            = 8
    OEM_FIXED_FONT      = 10
    ANSI_FIXED_FONT     = 11
    ANSI_VAR_FONT       = 12
    SYSTEM_FONT         = 13
    DEVICE_DEFAULT_FONT = 14
    DEFAULT_PALETTE     = 15
    SYSTEM_FIXED_FONT   = 16
    DEFAULT_GUI_FONT    = 17
    DC_BRUSH            = 18
    DC_PEN              = 19
)

Stock Logical Objects

const (
    BS_SOLID         = 0
    BS_NULL          = 1
    BS_HOLLOW        = BS_NULL
    BS_HATCHED       = 2
    BS_PATTERN       = 3
    BS_INDEXED       = 4
    BS_DIBPATTERN    = 5
    BS_DIBPATTERNPT  = 6
    BS_PATTERN8X8    = 7
    BS_DIBPATTERN8X8 = 8
    BS_MONOPATTERN   = 9
)

Brush styles

const (
    TME_HOVER     = 0x00000001
    TME_LEAVE     = 0x00000002
    TME_NONCLIENT = 0x00000010
    TME_QUERY     = 0x40000000
    TME_CANCEL    = 0x80000000

    HOVER_DEFAULT = 0xFFFFFFFF
)

TRACKMOUSEEVENT flags

const (
    HTERROR       = (-2)
    HTTRANSPARENT = (-1)
    HTNOWHERE     = 0
    HTCLIENT      = 1
    HTCAPTION     = 2
    HTSYSMENU     = 3
    HTGROWBOX     = 4
    HTSIZE        = HTGROWBOX
    HTMENU        = 5
    HTHSCROLL     = 6
    HTVSCROLL     = 7
    HTMINBUTTON   = 8
    HTMAXBUTTON   = 9
    HTLEFT        = 10
    HTRIGHT       = 11
    HTTOP         = 12
    HTTOPLEFT     = 13
    HTTOPRIGHT    = 14
    HTBOTTOM      = 15
    HTBOTTOMLEFT  = 16
    HTBOTTOMRIGHT = 17
    HTBORDER      = 18
    HTREDUCE      = HTMINBUTTON
    HTZOOM        = HTMAXBUTTON
    HTSIZEFIRST   = HTLEFT
    HTSIZELAST    = HTBOTTOMRIGHT
    HTOBJECT      = 19
    HTCLOSE       = 20
    HTHELP        = 21
)

WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes

const (
    DT_TOP                  = 0x00000000
    DT_LEFT                 = 0x00000000
    DT_CENTER               = 0x00000001
    DT_RIGHT                = 0x00000002
    DT_VCENTER              = 0x00000004
    DT_BOTTOM               = 0x00000008
    DT_WORDBREAK            = 0x00000010
    DT_SINGLELINE           = 0x00000020
    DT_EXPANDTABS           = 0x00000040
    DT_TABSTOP              = 0x00000080
    DT_NOCLIP               = 0x00000100
    DT_EXTERNALLEADING      = 0x00000200
    DT_CALCRECT             = 0x00000400
    DT_NOPREFIX             = 0x00000800
    DT_INTERNAL             = 0x00001000
    DT_EDITCONTROL          = 0x00002000
    DT_PATH_ELLIPSIS        = 0x00004000
    DT_END_ELLIPSIS         = 0x00008000
    DT_MODIFYSTRING         = 0x00010000
    DT_RTLREADING           = 0x00020000
    DT_WORD_ELLIPSIS        = 0x00040000
    DT_NOFULLWIDTHCHARBREAK = 0x00080000
    DT_HIDEPREFIX           = 0x00100000
    DT_PREFIXONLY           = 0x00200000
)

DrawText[Ex] format flags

const (
    TRANSPARENT = 1
    OPAQUE      = 2
    BKMODE_LAST = 2
)

Background Modes

const (
    GMEM_FIXED          = 0x0000
    GMEM_MOVEABLE       = 0x0002
    GMEM_NOCOMPACT      = 0x0010
    GMEM_NODISCARD      = 0x0020
    GMEM_ZEROINIT       = 0x0040
    GMEM_MODIFY         = 0x0080
    GMEM_DISCARDABLE    = 0x0100
    GMEM_NOT_BANKED     = 0x1000
    GMEM_SHARE          = 0x2000
    GMEM_DDESHARE       = 0x2000
    GMEM_NOTIFY         = 0x4000
    GMEM_LOWER          = GMEM_NOT_BANKED
    GMEM_VALID_FLAGS    = 0x7F72
    GMEM_INVALID_HANDLE = 0x8000
    GHND                = (GMEM_MOVEABLE | GMEM_ZEROINIT)
    GPTR                = (GMEM_FIXED | GMEM_ZEROINIT)
)

Global Memory Flags

const (
    SRCCOPY        = 0x00CC0020
    SRCPAINT       = 0x00EE0086
    SRCAND         = 0x008800C6
    SRCINVERT      = 0x00660046
    SRCERASE       = 0x00440328
    NOTSRCCOPY     = 0x00330008
    NOTSRCERASE    = 0x001100A6
    MERGECOPY      = 0x00C000CA
    MERGEPAINT     = 0x00BB0226
    PATCOPY        = 0x00F00021
    PATPAINT       = 0x00FB0A09
    PATINVERT      = 0x005A0049
    DSTINVERT      = 0x00550009
    BLACKNESS      = 0x00000042
    WHITENESS      = 0x00FF0062
    NOMIRRORBITMAP = 0x80000000
    CAPTUREBLT     = 0x40000000
)

Ternary raster operations

const (
    CF_TEXT            = 1
    CF_BITMAP          = 2
    CF_METAFILEPICT    = 3
    CF_SYLK            = 4
    CF_DIF             = 5
    CF_TIFF            = 6
    CF_OEMTEXT         = 7
    CF_DIB             = 8
    CF_PALETTE         = 9
    CF_PENDATA         = 10
    CF_RIFF            = 11
    CF_WAVE            = 12
    CF_UNICODETEXT     = 13
    CF_ENHMETAFILE     = 14
    CF_HDROP           = 15
    CF_LOCALE          = 16
    CF_DIBV5           = 17
    CF_MAX             = 18
    CF_OWNERDISPLAY    = 0x0080
    CF_DSPTEXT         = 0x0081
    CF_DSPBITMAP       = 0x0082
    CF_DSPMETAFILEPICT = 0x0083
    CF_DSPENHMETAFILE  = 0x008E
    CF_PRIVATEFIRST    = 0x0200
    CF_PRIVATELAST     = 0x02FF
    CF_GDIOBJFIRST     = 0x0300
    CF_GDIOBJLAST      = 0x03FF
)

Clipboard formats

const (
    BI_RGB       = 0
    BI_RLE8      = 1
    BI_RLE4      = 2
    BI_BITFIELDS = 3
    BI_JPEG      = 4
    BI_PNG       = 5
)

Bitmap compression formats

const (
    DIB_PAL_COLORS = 1
    DIB_RGB_COLORS = 0
)

SetDIBitsToDevice fuColorUse

const (
    MAPVK_VK_TO_CHAR   = 2
    MAPVK_VK_TO_VSC    = 0
    MAPVK_VSC_TO_VK    = 1
    MAPVK_VSC_TO_VK_EX = 3
)

MapVirtualKey maptypes

const (
    EVENTLOG_SEEK_READ       = 0x0002
    EVENTLOG_SEQUENTIAL_READ = 0x0001
    EVENTLOG_FORWARDS_READ   = 0x0004
    EVENTLOG_BACKWARDS_READ  = 0x0008
)

ReadEventLog Flags

const (
    TH32CS_SNAPHEAPLIST = 0x00000001
    TH32CS_SNAPPROCESS  = 0x00000002
    TH32CS_SNAPTHREAD   = 0x00000004
    TH32CS_SNAPMODULE   = 0x00000008
    TH32CS_SNAPMODULE32 = 0x00000010
    TH32CS_INHERIT      = 0x80000000
    TH32CS_SNAPALL      = TH32CS_SNAPHEAPLIST | TH32CS_SNAPMODULE | TH32CS_SNAPPROCESS | TH32CS_SNAPTHREAD
)

CreateToolhelp32Snapshot flags

const (
    MAX_MODULE_NAME32 = 255
    MAX_PATH          = 260
)
const (
    FOREGROUND_BLUE            = 0x0001
    FOREGROUND_GREEN           = 0x0002
    FOREGROUND_RED             = 0x0004
    FOREGROUND_INTENSITY       = 0x0008
    BACKGROUND_BLUE            = 0x0010
    BACKGROUND_GREEN           = 0x0020
    BACKGROUND_RED             = 0x0040
    BACKGROUND_INTENSITY       = 0x0080
    COMMON_LVB_LEADING_BYTE    = 0x0100
    COMMON_LVB_TRAILING_BYTE   = 0x0200
    COMMON_LVB_GRID_HORIZONTAL = 0x0400
    COMMON_LVB_GRID_LVERTICAL  = 0x0800
    COMMON_LVB_GRID_RVERTICAL  = 0x1000
    COMMON_LVB_REVERSE_VIDEO   = 0x4000
    COMMON_LVB_UNDERSCORE      = 0x8000
)
const (
    DWM_BB_ENABLE                = 0x00000001 //     A value for the fEnable member has been specified.
    DWM_BB_BLURREGION            = 0x00000002 //     A value for the hRgnBlur member has been specified.
    DWM_BB_TRANSITIONONMAXIMIZED = 0x00000004 //     A value for the fTransitionOnMaximized member has been specified.
)

Flags used by the DWM_BLURBEHIND structure to indicate which of its members contain valid information.

const (
    DWM_EC_DISABLECOMPOSITION = 0 //     Disable composition
    DWM_EC_ENABLECOMPOSITION  = 1 //     Enable composition
)

Flags used by the DwmEnableComposition function to change the state of Desktop Window Manager (DWM) composition.

const (
    DWMSC_DOWN      = 0x00000001
    DWMSC_UP        = 0x00000002
    DWMSC_DRAG      = 0x00000004
    DWMSC_HOLD      = 0x00000008
    DWMSC_PENBARREL = 0x00000010
    DWMSC_NONE      = 0x00000000
    DWMSC_ALL       = 0xFFFFFFFF
)
const (
    DWM_SOURCE_FRAME_SAMPLING_POINT = iota + 1
    DWM_SOURCE_FRAME_SAMPLING_COVERAGE
    DWM_SOURCE_FRAME_SAMPLING_LAST
)

TODO: need to verify this construction Flags used by the DwmSetPresentParameters function to specify the frame sampling type

const (
    DWM_TNP_RECTDESTINATION      = 0x00000001 //    A value for the rcDestination member has been specified
    DWM_TNP_RECTSOURCE           = 0x00000002 //    A value for the rcSource member has been specified
    DWM_TNP_OPACITY              = 0x00000004 //    A value for the opacity member has been specified
    DWM_TNP_VISIBLE              = 0x00000008 //    A value for the fVisible member has been specified
    DWM_TNP_SOURCECLIENTAREAONLY = 0x00000010 //    A value for the fSourceClientAreaOnly member has been specified
)

Flags used by the DWM_THUMBNAIL_PROPERTIES structure to indicate which of its members contain valid information.

const (
    DWMFLIP3D_DEFAULT = iota + 1
    DWMFLIP3D_EXCLUDEBELOW
    DWMFLIP3D_EXCLUDEABOVE
    DWMFLIP3D_LAST
)

TODO: need to verify this construction Flags used by the DwmSetWindowAttribute function to specify the Flip3D window policy

const (
    DWMNCRP_USEWINDOWSTYLE = iota + 1
    DWMNCRP_DISABLED
    DWMNCRP_ENABLED
    DWMNCRP_LAST
)

TODO: need to verify this construction Flags used by the DwmSetWindowAttribute function to specify the non-client area rendering policy

const (
    DWMTRANSITION_OWNEDWINDOW_NULL       = -1
    DWMTRANSITION_OWNEDWINDOW_REPOSITION = 0
)
const (
    DWMWA_NCRENDERING_ENABLED = iota + 1
    DWMWA_NCRENDERING_POLICY
    DWMWA_TRANSITIONS_FORCEDISABLED
    DWMWA_ALLOW_NCPAINT
    DWMWA_CAPTION_BUTTON_BOUNDS
    DWMWA_NONCLIENT_RTL_LAYOUT
    DWMWA_FORCE_ICONIC_REPRESENTATION
    DWMWA_FLIP3D_POLICY
    DWMWA_EXTENDED_FRAME_BOUNDS
    DWMWA_HAS_ICONIC_BITMAP
    DWMWA_DISALLOW_PEEK
    DWMWA_EXCLUDED_FROM_PEEK
    DWMWA_CLOAK
    DWMWA_CLOAKED
    DWMWA_FREEZE_REPRESENTATION
    DWMWA_LAST
)

TODO: need to verify this construction Flags used by the DwmGetWindowAttribute and DwmSetWindowAttribute functions to specify window attributes for non-client rendering

const (
    GT_PEN_TAP                 = 0
    GT_PEN_DOUBLETAP           = 1
    GT_PEN_RIGHTTAP            = 2
    GT_PEN_PRESSANDHOLD        = 3
    GT_PEN_PRESSANDHOLDABORT   = 4
    GT_TOUCH_TAP               = 5
    GT_TOUCH_DOUBLETAP         = 6
    GT_TOUCH_RIGHTTAP          = 7
    GT_TOUCH_PRESSANDHOLD      = 8
    GT_TOUCH_PRESSANDHOLDABORT = 9
    GT_TOUCH_PRESSANDTAP       = 10
)

TODO: use iota? Identifies the gesture type

const (
    ICON_SMALL  = 0
    ICON_BIG    = 1
    ICON_SMALL2 = 2
)

Icons

const (
    SIZE_RESTORED  = 0
    SIZE_MINIMIZED = 1
    SIZE_MAXIMIZED = 2
    SIZE_MAXSHOW   = 3
    SIZE_MAXHIDE   = 4
)
const (
    XBUTTON1 = 1
    XBUTTON2 = 2
)

XButton values

const (
    DM_SPECVERSION = 0x0401

    DM_ORIENTATION        = 0x00000001
    DM_PAPERSIZE          = 0x00000002
    DM_PAPERLENGTH        = 0x00000004
    DM_PAPERWIDTH         = 0x00000008
    DM_SCALE              = 0x00000010
    DM_POSITION           = 0x00000020
    DM_NUP                = 0x00000040
    DM_DISPLAYORIENTATION = 0x00000080
    DM_COPIES             = 0x00000100
    DM_DEFAULTSOURCE      = 0x00000200
    DM_PRINTQUALITY       = 0x00000400
    DM_COLOR              = 0x00000800
    DM_DUPLEX             = 0x00001000
    DM_YRESOLUTION        = 0x00002000
    DM_TTOPTION           = 0x00004000
    DM_COLLATE            = 0x00008000
    DM_FORMNAME           = 0x00010000
    DM_LOGPIXELS          = 0x00020000
    DM_BITSPERPEL         = 0x00040000
    DM_PELSWIDTH          = 0x00080000
    DM_PELSHEIGHT         = 0x00100000
    DM_DISPLAYFLAGS       = 0x00200000
    DM_DISPLAYFREQUENCY   = 0x00400000
    DM_ICMMETHOD          = 0x00800000
    DM_ICMINTENT          = 0x01000000
    DM_MEDIATYPE          = 0x02000000
    DM_DITHERTYPE         = 0x04000000
    DM_PANNINGWIDTH       = 0x08000000
    DM_PANNINGHEIGHT      = 0x10000000
    DM_DISPLAYFIXEDOUTPUT = 0x20000000
)

Devmode

const (
    CDS_UPDATEREGISTRY  = 0x00000001
    CDS_TEST            = 0x00000002
    CDS_FULLSCREEN      = 0x00000004
    CDS_GLOBAL          = 0x00000008
    CDS_SET_PRIMARY     = 0x00000010
    CDS_VIDEOPARAMETERS = 0x00000020
    CDS_RESET           = 0x40000000
    CDS_NORESET         = 0x10000000

    DISP_CHANGE_SUCCESSFUL  = 0
    DISP_CHANGE_RESTART     = 1
    DISP_CHANGE_FAILED      = -1
    DISP_CHANGE_BADMODE     = -2
    DISP_CHANGE_NOTUPDATED  = -3
    DISP_CHANGE_BADFLAGS    = -4
    DISP_CHANGE_BADPARAM    = -5
    DISP_CHANGE_BADDUALVIEW = -6
)

ChangeDisplaySettings

const (
    ENUM_CURRENT_SETTINGS  = 0xFFFFFFFF
    ENUM_REGISTRY_SETTINGS = 0xFFFFFFFE
)
const (
    PFD_TYPE_RGBA       = 0
    PFD_TYPE_COLORINDEX = 1

    PFD_MAIN_PLANE     = 0
    PFD_OVERLAY_PLANE  = 1
    PFD_UNDERLAY_PLANE = -1

    PFD_DOUBLEBUFFER         = 0x00000001
    PFD_STEREO               = 0x00000002
    PFD_DRAW_TO_WINDOW       = 0x00000004
    PFD_DRAW_TO_BITMAP       = 0x00000008
    PFD_SUPPORT_GDI          = 0x00000010
    PFD_SUPPORT_OPENGL       = 0x00000020
    PFD_GENERIC_FORMAT       = 0x00000040
    PFD_NEED_PALETTE         = 0x00000080
    PFD_NEED_SYSTEM_PALETTE  = 0x00000100
    PFD_SWAP_EXCHANGE        = 0x00000200
    PFD_SWAP_COPY            = 0x00000400
    PFD_SWAP_LAYER_BUFFERS   = 0x00000800
    PFD_GENERIC_ACCELERATED  = 0x00001000
    PFD_SUPPORT_DIRECTDRAW   = 0x00002000
    PFD_DIRECT3D_ACCELERATED = 0x00004000
    PFD_SUPPORT_COMPOSITION  = 0x00008000

    PFD_DEPTH_DONTCARE        = 0x20000000
    PFD_DOUBLEBUFFER_DONTCARE = 0x40000000
    PFD_STEREO_DONTCARE       = 0x80000000
)

PIXELFORMATDESCRIPTOR

const (
    INPUT_MOUSE    = 0
    INPUT_KEYBOARD = 1
    INPUT_HARDWARE = 2
)
const (
    MOUSEEVENTF_ABSOLUTE        = 0x8000
    MOUSEEVENTF_HWHEEL          = 0x01000
    MOUSEEVENTF_MOVE            = 0x0001
    MOUSEEVENTF_MOVE_NOCOALESCE = 0x2000
    MOUSEEVENTF_LEFTDOWN        = 0x0002
    MOUSEEVENTF_LEFTUP          = 0x0004
    MOUSEEVENTF_RIGHTDOWN       = 0x0008
    MOUSEEVENTF_RIGHTUP         = 0x0010
    MOUSEEVENTF_MIDDLEDOWN      = 0x0020
    MOUSEEVENTF_MIDDLEUP        = 0x0040
    MOUSEEVENTF_VIRTUALDESK     = 0x4000
    MOUSEEVENTF_WHEEL           = 0x0800
    MOUSEEVENTF_XDOWN           = 0x0080
    MOUSEEVENTF_XUP             = 0x0100
)
const (
    WH_CALLWNDPROC     = 4
    WH_CALLWNDPROCRET  = 12
    WH_CBT             = 5
    WH_DEBUG           = 9
    WH_FOREGROUNDIDLE  = 11
    WH_GETMESSAGE      = 3
    WH_JOURNALPLAYBACK = 1
    WH_JOURNALRECORD   = 0
    WH_KEYBOARD        = 2
    WH_KEYBOARD_LL     = 13
    WH_MOUSE           = 7
    WH_MOUSE_LL        = 14
    WH_MSGFILTER       = -1
    WH_SHELL           = 10
    WH_SYSMSGFILTER    = 6
)

Windows Hooks (WH_*) http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990(v=vs.85).aspx

const (
    MEM_COMMIT     = 0x00001000
    MEM_RESERVE    = 0x00002000
    MEM_RESET      = 0x00080000
    MEM_RESET_UNDO = 0x1000000

    MEM_LARGE_PAGES = 0x20000000
    MEM_PHYSICAL    = 0x00400000
    MEM_TOP_DOWN    = 0x00100000

    MEM_DECOMMIT = 0x4000
    MEM_RELEASE  = 0x8000
)
const (
    PROCESS_CREATE_PROCESS            = 0x0080
    PROCESS_CREATE_THREAD             = 0x0002
    PROCESS_DUP_HANDLE                = 0x0040
    PROCESS_QUERY_INFORMATION         = 0x0400
    PROCESS_QUERY_LIMITED_INFORMATION = 0x1000
    PROCESS_SET_INFORMATION           = 0x0200
    PROCESS_SET_QUOTA                 = 0x0100
    PROCESS_SUSPEND_RESUME            = 0x0800
    PROCESS_TERMINATE                 = 0x0001
    PROCESS_VM_OPERATION              = 0x0008
    PROCESS_VM_READ                   = 0x0010
    PROCESS_VM_WRITE                  = 0x0020
    SYNCHRONIZE                       = 0x00100000
)
const (
    PAGE_EXECUTE           = 0x10
    PAGE_EXECUTE_READ      = 0x20
    PAGE_EXECUTE_READWRITE = 0x40
    PAGE_EXECUTE_WRITECOPY = 0x80
    PAGE_NOACCESS          = 0x01
    PAGE_READWRITE         = 0x04
    PAGE_WRITECOPY         = 0x08
    PAGE_TARGETS_INVALID   = 0x40000000
    PAGE_TARGETS_NO_UPDATE = 0x40000000
)
const (
    SMTO_ABORTIFHUNG        = 0x0002
    SMTO_BLOCK              = 0x0001
    SMTO_NORMAL             = 0x0000
    SMTO_NOTIMEOUTIFNOTHUNG = 0x0008
    SMTO_ERRORONEXIT        = 0x0020
)

SendMessageTimeout Flags https://msdn.microsoft.com/en-us/library/windows/desktop/ms644952(v=vs.85).aspx

const (
    RDW_ERASE           = 4
    RDW_ALLCHILDREN     = 0x80
    RDW_ERASENOW        = 0x200
    RDW_FRAME           = 0x400
    RDW_INTERNALPAINT   = 2
    RDW_INVALIDATE      = 1
    RDW_NOCHILDREN      = 0x40
    RDW_NOERASE         = 0x20
    RDW_NOFRAME         = 0x800
    RDW_NOINTERNALPAINT = 0x10
    RDW_UPDATENOW       = 0x100
    RDW_VALIDATE        = 8
)

RedrawWindow Flags

const (
    WAIT_ABANDONED = 0x00000080
    WAIT_OBJECT_0  = 0x00000000
    WAIT_TIMEOUT   = 0x00000102
    WAIT_FAILED    = 0xFFFFFFFF
    INFINITE       = 0xFFFFFFFF
)
const (
    RTL_CLONE_PROCESS_FLAGS_CREATE_SUSPENDED = 0x00000001
    RTL_CLONE_PROCESS_FLAGS_INHERIT_HANDLES  = 0x00000002
    RTL_CLONE_PROCESS_FLAGS_NO_SYNCHRONIZE   = 0x00000004

    RTL_CLONE_PARENT = 0
    RTL_CLONE_CHILD  = 297

    THREAD_TERMINATE                 = 0x0001
    THREAD_SUSPEND_RESUME            = 0x0002
    THREAD_GET_CONTEXT               = 0x0008
    THREAD_SET_CONTEXT               = 0x0010
    THREAD_SET_INFORMATION           = 0x0020
    THREAD_QUERY_INFORMATION         = 0x0040
    THREAD_SET_THREAD_TOKEN          = 0x0080
    THREAD_IMPERSONATE               = 0x0100
    THREAD_DIRECT_IMPERSONATION      = 0x0200
    THREAD_SET_LIMITED_INFORMATION   = 0x0400
    THREAD_QUERY_LIMITED_INFORMATION = 0x0800
    THREAD_ALL_ACCESS                = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xffff

    PROCESS_SET_SESSIONID = 0x0004
    PROCESS_ALL_ACCESS    = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xffff
)
const (
    Ok                        = 0
    GenericError              = 1
    InvalidParameter          = 2
    OutOfMemory               = 3
    ObjectBusy                = 4
    InsufficientBuffer        = 5
    NotImplemented            = 6
    Win32Error                = 7
    WrongState                = 8
    Aborted                   = 9
    FileNotFound              = 10
    ValueOverflow             = 11
    AccessDenied              = 12
    UnknownImageFormat        = 13
    FontFamilyNotFound        = 14
    FontStyleNotFound         = 15
    NotTrueTypeFont           = 16
    UnsupportedGdiplusVersion = 17
    GdiplusNotInitialized     = 18
    PropertyNotFound          = 19
    PropertyNotSupported      = 20
    ProfileNotFound           = 21
)
const CLR_INVALID = 0xFFFFFFFF
const (
    CW_USEDEFAULT = ^0x7fffffff
)
const (
    KERNEL_LOGGER_NAME = "NT Kernel Logger"
)
const LF_FACESIZE = 32
const (
    OFN_EX_NOPLACESBAR = 0x00000001
)

GetOpenFileName and GetSaveFileName extended flags

const PORT_MESSAGE_SIZE = 0x28
const SECURITY_QOS_SIZE = 12
const SHORT_MESSAGE_MAX_PAYLOAD uint16 = SHORT_MESSAGE_MAX_SIZE - PORT_MESSAGE_SIZE
const SHORT_MESSAGE_MAX_SIZE uint16 = 65535 // MAX_USHORT
const (
    STANDARD_RIGHTS_REQUIRED = 0x000F
)

Variables

var (
    IID_NULL                      = &GUID{0x00000000, 0x0000, 0x0000, [8]byte{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}
    IID_IUnknown                  = &GUID{0x00000000, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
    IID_IDispatch                 = &GUID{0x00020400, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
    IID_IConnectionPointContainer = &GUID{0xB196B284, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}}
    IID_IConnectionPoint          = &GUID{0xB196B286, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}}
)
var (
    SystemTraceControlGuid = GUID{
        0x9e814aad,
        0x3204,
        0x11d2,
        [8]byte{0x9a, 0x82, 0x00, 0x60, 0x08, 0xa8, 0x69, 0x39},
    }
)

func AbortDoc Uses

func AbortDoc(hdc HDC) int

func AddClipboardFormatListener Uses

func AddClipboardFormatListener(hwnd HWND) bool

func AdjustWindowRect Uses

func AdjustWindowRect(rect *RECT, style uint, menu bool) bool

func AdjustWindowRectEx Uses

func AdjustWindowRectEx(rect *RECT, style uint, menu bool, exStyle uint) bool

func AllocConsole Uses

func AllocConsole() (e error)

BOOL WINAPI AllocConsole(void);

func AlpcGetMessageAttribute Uses

func AlpcGetMessageAttribute(buf *ALPC_MESSAGE_ATTRIBUTES, attr uint32) unsafe.Pointer

ptr := AlpcGetMessageAttribute(&recvMsgAttrs, ALPC_MESSAGE_CONTEXT_ATTRIBUTE) if ptr != nil {

context := (*ALPC_CONTEXT_ATTR)(ptr)

}

func BitBlt Uses

func BitBlt(hdcDest HDC, nXDest, nYDest, nWidth, nHeight int, hdcSrc HDC, nXSrc, nYSrc int, dwRop uint)

func CallWindowProc Uses

func CallWindowProc(preWndProc uintptr, hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func ChangeDisplaySettingsEx Uses

func ChangeDisplaySettingsEx(szDeviceName *uint16, devMode *DEVMODE, hwnd HWND, dwFlags uint32, lParam uintptr) int32

func ChoosePixelFormat Uses

func ChoosePixelFormat(hdc HDC, pfd *PIXELFORMATDESCRIPTOR) int

func ClientToScreen Uses

func ClientToScreen(hwnd HWND, x, y int) (int, int)

func CloseClipboard Uses

func CloseClipboard() bool

func CloseEventLog Uses

func CloseEventLog(eventlog HANDLE) bool

func CloseHandle Uses

func CloseHandle(object HANDLE) bool

func CloseServiceHandle Uses

func CloseServiceHandle(hSCObject HANDLE) error

func CoInitialize Uses

func CoInitialize()

func CoUninitialize Uses

func CoUninitialize()

func ComAddRef Uses

func ComAddRef(unknown *IUnknown) int32

func ComGetIDsOfName Uses

func ComGetIDsOfName(disp *IDispatch, names []string) []int32

func ComRelease Uses

func ComRelease(unknown *IUnknown) int32

func CommDlgExtendedError Uses

func CommDlgExtendedError() uint

func ControlService Uses

func ControlService(hService HANDLE, dwControl uint32, lpServiceStatus *SERVICE_STATUS) bool

func ControlTrace Uses

func ControlTrace(hTrace TRACEHANDLE, lpSessionName string, props *EVENT_TRACE_PROPERTIES, dwControl uint32) (success bool, e error)

func CopyRect Uses

func CopyRect(dst, src *RECT) bool

func CreateProcessW Uses

func CreateProcessW(
    lpApplicationName, lpCommandLine string,
    lpProcessAttributes, lpThreadAttributes *SECURITY_ATTRIBUTES,
    bInheritHandles BOOL,
    dwCreationFlags uint32,
    lpEnvironment unsafe.Pointer,
    lpCurrentDirectory string,
    lpStartupInfo *STARTUPINFOW,
    lpProcessInformation *PROCESS_INFORMATION,
) (e error)

WINBASEAPI WINBOOL WINAPI CreateProcessW ( LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes WINBOOL bInheritHandles DWORD dwCreationFlags LPVOID lpEnvironment LPCWSTR lpCurrentDirectory LPSTARTUPINFOW lpStartupInfo LPPROCESS_INFORMATION lpProcessInformation );

func DefDlgProc Uses

func DefDlgProc(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func DefWindowProc Uses

func DefWindowProc(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func DeleteDC Uses

func DeleteDC(hdc HDC) bool

func DeleteEnhMetaFile Uses

func DeleteEnhMetaFile(hemf HENHMETAFILE) bool

func DeleteObject Uses

func DeleteObject(hObject HGDIOBJ) bool

func DescribePixelFormat Uses

func DescribePixelFormat(hdc HDC, iPixelFormat int, nBytes uint, pfd *PIXELFORMATDESCRIPTOR) int

func DestroyIcon Uses

func DestroyIcon(icon HICON) bool

func DestroyWindow Uses

func DestroyWindow(hwnd HWND) bool

func DialogBox Uses

func DialogBox(hInstance HINSTANCE, lpTemplateName *uint16, hWndParent HWND, lpDialogProc uintptr) int

func DispatchMessage Uses

func DispatchMessage(msg *MSG) uintptr

func DragAcceptFiles Uses

func DragAcceptFiles(hwnd HWND, accept bool)

func DragFinish Uses

func DragFinish(hDrop HDROP)

func DragQueryFile Uses

func DragQueryFile(hDrop HDROP, iFile uint) (fileName string, fileCount uint)

func DragQueryPoint Uses

func DragQueryPoint(hDrop HDROP) (x, y int, isClientArea bool)

func DrawIcon Uses

func DrawIcon(hDC HDC, x, y int, hIcon HICON) bool

func DrawText Uses

func DrawText(hDC HDC, text string, uCount int, lpRect *RECT, uFormat uint) int

func DwmDefWindowProc Uses

func DwmDefWindowProc(hWnd HWND, msg uint, wParam, lParam uintptr) (bool, uint)

func DwmGetWindowAttribute Uses

func DwmGetWindowAttribute(hWnd HWND, dwAttribute uint32) (pAttribute interface{}, result HRESULT)

TODO: verify handling of variable arguments

func DwmRenderGesture Uses

func DwmRenderGesture(gt GESTURE_TYPE, cContacts uint, pdwPointerID *uint32, pPoints *POINT)

func DwmShowContact Uses

func DwmShowContact(dwPointerID uint32, eShowContact DWM_SHOWCONTACT)

func DwmTetherContact Uses

func DwmTetherContact(dwPointerID uint32, fEnable bool, ptTether POINT)

func DwmTransitionOwnedWindow Uses

func DwmTransitionOwnedWindow(hWnd HWND, target DWMTRANSITION_OWNEDWINDOW_TARGET)

func Ellipse Uses

func Ellipse(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect int) bool

func EmptyClipboard Uses

func EmptyClipboard() bool

func EnableWindow Uses

func EnableWindow(hwnd HWND, b bool) bool

func EndDialog Uses

func EndDialog(hwnd HWND, nResult uintptr) bool

func EndDoc Uses

func EndDoc(hdc HDC) int

func EndPage Uses

func EndPage(hdc HDC) int

func EndPaint Uses

func EndPaint(hwnd HWND, paint *PAINTSTRUCT)

func EnumChildWindows Uses

func EnumChildWindows(hWndParent HWND, lpEnumFunc WNDENUMPROC, lParam LPARAM) bool

func EnumClipboardFormats Uses

func EnumClipboardFormats(format uint) uint

func EnumDisplayMonitors Uses

func EnumDisplayMonitors(hdc HDC, clip *RECT, fnEnum, dwData uintptr) bool

func EnumDisplaySettingsEx Uses

func EnumDisplaySettingsEx(szDeviceName *uint16, iModeNum uint32, devMode *DEVMODE, dwFlags uint32) bool

func EnumProcesses Uses

func EnumProcesses(processIds []uint32, cb uint32, bytesReturned *uint32) bool

func EqualRect Uses

func EqualRect(rect1, rect2 *RECT) bool

func FillRect Uses

func FillRect(hDC HDC, lprc *RECT, hbr HBRUSH) bool

func Fork Uses

func Fork() (pid uintptr, e error)

Fork creates a clone of the current process using the undocumented RtlCloneUserProcess call in ntdll, similar to unix fork(). The return value in the parent is the child PID. In the child it is 0.

func GdipCreateBitmapFromFile Uses

func GdipCreateBitmapFromFile(filename string) (*uintptr, error)

func GdipCreateBitmapFromResource Uses

func GdipCreateBitmapFromResource(instance HINSTANCE, resId *uint16) (*uintptr, error)

func GdipCreateBitmapFromStream Uses

func GdipCreateBitmapFromStream(stream *IStream) (*uintptr, error)

func GdipDisposeImage Uses

func GdipDisposeImage(image *uintptr)

func GdiplusShutdown Uses

func GdiplusShutdown()

func GdiplusStartup Uses

func GdiplusStartup(input *GdiplusStartupInput, output *GdiplusStartupOutput)

func GetAsyncKeyState Uses

func GetAsyncKeyState(vKey int) uint16

func GetClassNameW Uses

func GetClassNameW(hwnd HWND) string

func GetClipboardFormatName Uses

func GetClipboardFormatName(format uint) (string, bool)

func GetCursorPos Uses

func GetCursorPos() (x, y int, ok bool)

func GetDeviceCaps Uses

func GetDeviceCaps(hdc HDC, index int) int

func GetDiskFreeSpaceEx Uses

func GetDiskFreeSpaceEx(dirName string) (r bool,
    freeBytesAvailable, totalNumberOfBytes, totalNumberOfFreeBytes uint64)

func GetEnhMetaFileHeader Uses

func GetEnhMetaFileHeader(hemf HENHMETAFILE, cbBuffer uint, lpemh *ENHMETAHEADER) uint

func GetEnhMetaFilePixelFormat Uses

func GetEnhMetaFilePixelFormat(hemf HENHMETAFILE, cbBuffer uint32, pfd *PIXELFORMATDESCRIPTOR) uint

func GetExitCodeProcess Uses

func GetExitCodeProcess(hProcess HANDLE) (code uintptr, e error)

func GetGpStatus Uses

func GetGpStatus(s int32) string

func GetKeyboardState Uses

func GetKeyboardState(lpKeyState *[]byte) bool

func GetLastError Uses

func GetLastError() uint32

func GetLogicalDrives Uses

func GetLogicalDrives() uint32

func GetMessage Uses

func GetMessage(msg *MSG, hwnd HWND, msgFilterMin, msgFilterMax uint32) int

func GetMonitorInfo Uses

func GetMonitorInfo(hMonitor HMONITOR, lmpi *MONITORINFO) bool

func GetObject Uses

func GetObject(hgdiobj HGDIOBJ, cbBuffer uintptr, lpvObject unsafe.Pointer) int

func GetOpenFileName Uses

func GetOpenFileName(ofn *OPENFILENAME) bool

func GetPixelFormat Uses

func GetPixelFormat(hdc HDC) int

func GetProcessTimes Uses

func GetProcessTimes(hProcess HANDLE, lpCreationTime, lpExitTime, lpKernelTime, lpUserTime *FILETIME) bool

func GetSaveFileName Uses

func GetSaveFileName(ofn *OPENFILENAME) bool

func GetSystemMetrics Uses

func GetSystemMetrics(index int) int

func GetSystemTimes Uses

func GetSystemTimes(lpIdleTime, lpKernelTime, lpUserTime *FILETIME) bool

func GetTextExtentExPoint Uses

func GetTextExtentExPoint(hdc HDC, lpszStr *uint16, cchString, nMaxExtent int, lpnFit, alpDx *int, lpSize *SIZE) bool

func GetTextExtentPoint32 Uses

func GetTextExtentPoint32(hdc HDC, lpString *uint16, c int, lpSize *SIZE) bool

func GetTextMetrics Uses

func GetTextMetrics(hdc HDC, lptm *TEXTMETRIC) bool

func GetUserDefaultLCID Uses

func GetUserDefaultLCID() uint32

func GetWindowLong Uses

func GetWindowLong(hwnd HWND, index int) int32

func GetWindowLongPtr Uses

func GetWindowLongPtr(hwnd HWND, index int) uintptr

func GetWindowText Uses

func GetWindowText(hwnd HWND) string

func GetWindowTextLength Uses

func GetWindowTextLength(hwnd HWND) int

func GlobalFree Uses

func GlobalFree(hMem HGLOBAL)

func GlobalLock Uses

func GlobalLock(hMem HGLOBAL) unsafe.Pointer

func GlobalUnlock Uses

func GlobalUnlock(hMem HGLOBAL) bool

func HIWORD Uses

func HIWORD(dw uint32) uint16

func ImageList_Add Uses

func ImageList_Add(himl HIMAGELIST, hbmImage, hbmMask HBITMAP) int

func ImageList_AddIcon Uses

func ImageList_AddIcon(himl HIMAGELIST, hicon HICON) int

func ImageList_Destroy Uses

func ImageList_Destroy(himl HIMAGELIST) bool

func ImageList_GetImageCount Uses

func ImageList_GetImageCount(himl HIMAGELIST) int

func ImageList_Remove Uses

func ImageList_Remove(himl HIMAGELIST, i int) bool

func ImageList_RemoveAll Uses

func ImageList_RemoveAll(himl HIMAGELIST) bool

func ImageList_ReplaceIcon Uses

func ImageList_ReplaceIcon(himl HIMAGELIST, i int, hicon HICON) int

func ImageList_SetImageCount Uses

func ImageList_SetImageCount(himl HIMAGELIST, uNewCount uint) bool

func InflateRect Uses

func InflateRect(rect *RECT, dx, dy int) bool

func InitCommonControlsEx Uses

func InitCommonControlsEx(lpInitCtrls *INITCOMMONCONTROLSEX) bool

func IntersectRect Uses

func IntersectRect(dst, src1, src2 *RECT) bool

func InvalidateRect Uses

func InvalidateRect(hwnd HWND, rect *RECT, erase bool) bool

func IsClipboardFormatAvailable Uses

func IsClipboardFormatAvailable(format uint) bool

func IsDialogMessage Uses

func IsDialogMessage(hwnd HWND, msg *MSG) bool

func IsRectEmpty Uses

func IsRectEmpty(rect *RECT) bool

func IsWindow Uses

func IsWindow(hwnd HWND) bool

func IsWindowEnabled Uses

func IsWindowEnabled(hwnd HWND) bool

func IsWindowVisible Uses

func IsWindowVisible(hwnd HWND) bool

func KillTimer Uses

func KillTimer(hwnd HWND, nIDEvent uint32) bool

func LOWORD Uses

func LOWORD(dw uint32) uint16

func LineTo Uses

func LineTo(hdc HDC, nXEnd, nYEnd int) bool

func LockResource Uses

func LockResource(hResData HGLOBAL) unsafe.Pointer

func Lstrcpy Uses

func Lstrcpy(buf []uint16, lpString *uint16)

func Lstrlen Uses

func Lstrlen(lpString *uint16) int

func MakeIntResource Uses

func MakeIntResource(id uint16) *uint16

func MapVirtualKeyEx Uses

func MapVirtualKeyEx(uCode, uMapType uint, dwhkl HKL) uint

func MessageBox Uses

func MessageBox(hwnd HWND, title, caption string, flags uint) int

func Module32First Uses

func Module32First(snapshot HANDLE, me *MODULEENTRY32) bool

func Module32Next Uses

func Module32Next(snapshot HANDLE, me *MODULEENTRY32) bool

func MoveMemory Uses

func MoveMemory(destination, source unsafe.Pointer, length uint32)

func MoveToEx Uses

func MoveToEx(hdc HDC, x, y int, lpPoint *POINT) bool

func MoveWindow Uses

func MoveWindow(hwnd HWND, x, y, width, height int, repaint bool) bool

func MulDiv Uses

func MulDiv(number, numerator, denominator int) int

func NtAlpcCancelMessage Uses

func NtAlpcCancelMessage(hPort HANDLE, flags uint32, pMsgContext *ALPC_CONTEXT_ATTR) (e error)

NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCancelMessage(

__in HANDLE PortHandle,
__in ULONG Flags,
__in PALPC_CONTEXT_ATTR MessageContext
);

func NtAlpcDisconnectPort Uses

func NtAlpcDisconnectPort(hPort HANDLE, flags uint32) (e error)

NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDisconnectPort(

__in HANDLE PortHandle,
__in ULONG Flags
);

func NtAlpcSendWaitReceivePort Uses

func NtAlpcSendWaitReceivePort(
    hPort HANDLE,
    flags uint32,
    sendMsg *AlpcShortMessage,
    sendMsgAttrs *ALPC_MESSAGE_ATTRIBUTES,
    recvMsg *AlpcShortMessage,
    recvBufLen *uint32,
    recvMsgAttrs *ALPC_MESSAGE_ATTRIBUTES,
    timeout *int64,
) (e error)

NTSTATUS NtAlpcSendWaitReceivePort(

__in HANDLE PortHandle,
__in ULONG Flags,
__in_opt PPORT_MESSAGE SendMessage,
__in_opt PALPC_MESSAGE_ATTRIBUTES SendMessageAttributes,
__inout_opt PPORT_MESSAGE ReceiveMessage,
__inout_opt PULONG BufferLength,
__inout_opt PALPC_MESSAGE_ATTRIBUTES ReceiveMessageAttributes,
__in_opt PLARGE_INTEGER Timeout
);

func OffsetRect Uses

func OffsetRect(rect *RECT, dx, dy int) bool

func OpenClipboard Uses

func OpenClipboard(hWndNewOwner HWND) bool

func PatBlt Uses

func PatBlt(hdc HDC, nXLeft, nYLeft, nWidth, nHeight int, dwRop uint)

func PeekMessage Uses

func PeekMessage(lpMsg *MSG, hwnd HWND, wMsgFilterMin, wMsgFilterMax, wRemoveMsg uint32) bool

func PlayEnhMetaFile Uses

func PlayEnhMetaFile(hdc HDC, hemf HENHMETAFILE, lpRect *RECT) bool

func PostMessage Uses

func PostMessage(hwnd HWND, msg uint32, wParam, lParam uintptr) bool

func PostQuitMessage Uses

func PostQuitMessage(exitCode int)

func PtInRect Uses

func PtInRect(rect *RECT, x, y int) bool

func QueryPerformanceCounter Uses

func QueryPerformanceCounter() uint64

func QueryPerformanceFrequency Uses

func QueryPerformanceFrequency() uint64

func ReadEventLog Uses

func ReadEventLog(eventlog HANDLE, readflags, recordoffset uint32, buffer []byte, numberofbytestoread uint32, bytesread, minnumberofbytesneeded *uint32) bool

func ReadProcessMemory Uses

func ReadProcessMemory(hProcess HANDLE, lpBaseAddress, nSize uintptr) (lpBuffer []uint16, lpNumberOfBytesRead int, ok bool)

func Rectangle Uses

func Rectangle(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect int) bool

func RedrawWindow Uses

func RedrawWindow(hWnd HWND, lpRect *RECT, hrgnUpdate HRGN, flag uint32)

it will panic when the function fails

func RegCloseKey Uses

func RegCloseKey(hKey HKEY) error

func RegEnumKeyEx Uses

func RegEnumKeyEx(hKey HKEY, index uint32) string

func RegGetRaw Uses

func RegGetRaw(hKey HKEY, subKey string, value string) []byte

func RegGetString Uses

func RegGetString(hKey HKEY, subKey string, value string) string

func RegSetBinary Uses

func RegSetBinary(hKey HKEY, subKey string, value []byte) (errno int)

func ReleaseCapture Uses

func ReleaseCapture() bool

func ReleaseDC Uses

func ReleaseDC(hwnd HWND, hDC HDC) bool

func RemoveClipboardFormatListener Uses

func RemoveClipboardFormatListener(hwnd HWND) bool

func ResumeThread Uses

func ResumeThread(ht HANDLE) (e error)

DWORD WINAPI ResumeThread(

_In_ HANDLE hThread

);

func RtlCloneUserProcess Uses

func RtlCloneUserProcess(
    ProcessFlags uint32,
    ProcessSecurityDescriptor, ThreadSecurityDescriptor *SECURITY_DESCRIPTOR,
    DebugPort HANDLE,
    ProcessInformation *RTL_USER_PROCESS_INFORMATION,
) (status uintptr)

func SHBrowseForFolder Uses

func SHBrowseForFolder(bi *BROWSEINFO) uintptr

func SHGetPathFromIDList Uses

func SHGetPathFromIDList(idl uintptr) string

func ScreenToClient Uses

func ScreenToClient(hwnd HWND, x, y int) (X, Y int, ok bool)

func SendMessage Uses

func SendMessage(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func SendMessageTimeout Uses

func SendMessageTimeout(hwnd HWND, msg uint32, wParam, lParam uintptr, fuFlags, uTimeout uint32) uintptr

func SetBkMode Uses

func SetBkMode(hdc HDC, iBkMode int) int

func SetBrushOrgEx Uses

func SetBrushOrgEx(hdc HDC, nXOrg, nYOrg int, lppt *POINT) bool

func SetConsoleTextAttribute Uses

func SetConsoleTextAttribute(hConsoleOutput HANDLE, wAttributes uint16) bool

func SetCursorPos Uses

func SetCursorPos(x, y int) bool

func SetDIBitsToDevice Uses

func SetDIBitsToDevice(hdc HDC, xDest, yDest, dwWidth, dwHeight, xSrc, ySrc int, uStartScan, cScanLines uint, lpvBits []byte, lpbmi *BITMAPINFO, fuColorUse uint) int

func SetForegroundWindow Uses

func SetForegroundWindow(hwnd HWND) bool

func SetPixelFormat Uses

func SetPixelFormat(hdc HDC, iPixelFormat int, pfd *PIXELFORMATDESCRIPTOR) bool

func SetRect Uses

func SetRect(rect *RECT, left, top, right, bottom int) bool

func SetRectEmpty Uses

func SetRectEmpty(rect *RECT) bool

func SetSecurityDescriptorDacl Uses

func SetSecurityDescriptorDacl(pSecurityDescriptor *SECURITY_DESCRIPTOR, pDacl *ACL) (e error)

http://msdn.microsoft.com/en-us/library/windows/desktop/aa379583(v=vs.85).aspx

func SetStretchBltMode Uses

func SetStretchBltMode(hdc HDC, iStretchMode int) int

func SetSystemTime Uses

func SetSystemTime(time *SYSTEMTIME) bool

func SetTimer Uses

func SetTimer(hwnd HWND, nIDEvent uint32, uElapse uint32, lpTimerProc uintptr) uintptr

func SetWindowLong Uses

func SetWindowLong(hwnd HWND, index int, value uint32) uint32

func SetWindowLongPtr Uses

func SetWindowLongPtr(hwnd HWND, index int, value uintptr) uintptr

func SetWindowPos Uses

func SetWindowPos(hwnd, hWndInsertAfter HWND, x, y, cx, cy int, uFlags uint) bool

func SetWindowText Uses

func SetWindowText(hwnd HWND, text string)

func ShellExecute Uses

func ShellExecute(hwnd HWND, lpOperation, lpFile, lpParameters, lpDirectory string, nShowCmd int) error

func ShowWindow Uses

func ShowWindow(hwnd HWND, cmdshow int) bool

func SizeofResource Uses

func SizeofResource(hModule HMODULE, hResInfo HRSRC) uint32

func StartDoc Uses

func StartDoc(hdc HDC, lpdi *DOCINFO) int

func StartPage Uses

func StartPage(hdc HDC) int

func StartService Uses

func StartService(hService HANDLE, lpServiceArgVectors []string) error

func StretchBlt Uses

func StretchBlt(hdcDest HDC, nXOriginDest, nYOriginDest, nWidthDest, nHeightDest int, hdcSrc HDC, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc int, dwRop uint)

func SubtractRect Uses

func SubtractRect(dst, src1, src2 *RECT) bool

func SwapBuffers Uses

func SwapBuffers(hdc HDC) bool

func SwapMouseButton Uses

func SwapMouseButton(fSwap bool) bool

func SysAllocString Uses

func SysAllocString(v string) (ss *int16)

func SysFreeString Uses

func SysFreeString(v *int16)

func SysStringLen Uses

func SysStringLen(v *int16) uint

func TerminateProcess Uses

func TerminateProcess(hProcess HANDLE, exitCode uint32) (e error)

func ToAscii Uses

func ToAscii(uVirtKey, uScanCode uint, lpKeyState *byte, lpChar *uint16, uFlags uint) int

func TrackMouseEvent Uses

func TrackMouseEvent(tme *TRACKMOUSEEVENT) bool

func TranslateAccelerator Uses

func TranslateAccelerator(hwnd HWND, hAccTable HACCEL, lpMsg *MSG) bool

func TranslateMessage Uses

func TranslateMessage(msg *MSG) bool

func UTF16PtrToString Uses

func UTF16PtrToString(cstr *uint16) string

func UnhookWindowsHookEx Uses

func UnhookWindowsHookEx(hhk HHOOK) bool

func UnionRect Uses

func UnionRect(dst, src1, src2 *RECT) bool

func UpdateWindow Uses

func UpdateWindow(hwnd HWND) bool

func VariantInit Uses

func VariantInit(v *VARIANT)

func VirtualAllocEx Uses

func VirtualAllocEx(hProcess HANDLE, lpAddress, dwSize uintptr, flAllocationType, flProtect uint32) uintptr

func VirtualFreeEx Uses

func VirtualFreeEx(hProcess HANDLE, lpAddress, dwSize uintptr, dwFreeType uint32) bool

func WaitForSingleObject Uses

func WaitForSingleObject(hHandle HANDLE, msecs uint32) (ok bool, e error)

func WaitMessage Uses

func WaitMessage() bool

func WglDeleteContext Uses

func WglDeleteContext(hglrc HGLRC) bool

func WglGetProcAddress Uses

func WglGetProcAddress(szProc string) uintptr

func WglMakeCurrent Uses

func WglMakeCurrent(hdc HDC, hglrc HGLRC) bool

func WglShareLists Uses

func WglShareLists(hglrc1, hglrc2 HGLRC) bool

func WriteProcessMemory Uses

func WriteProcessMemory(hProcess HANDLE, lpBaseAddress, lpBuffer, nSize uintptr) (int, bool)

type ACL Uses

type ACL struct {
    AclRevision byte
    Sbz1        byte
    AclSize     uint16
    AceCount    uint16
    Sbz2        uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa374931(v=vs.85).aspx

type ALPC_CONTEXT_ATTR Uses

type ALPC_CONTEXT_ATTR struct {
    PortContext    *AlpcPortContext
    MessageContext uintptr
    Sequence       uint32
    MessageId      uint32
    CallbackId     uint32
}

type ALPC_HANDLE_ATTR Uses

type ALPC_HANDLE_ATTR struct {
    Flags         uint32
    Handle        HANDLE
    ObjectType    uint32
    DesiredAccess uint32
}

type ALPC_MESSAGE_ATTRIBUTES Uses

type ALPC_MESSAGE_ATTRIBUTES struct {
    AllocatedAttributes uint32
    ValidAttributes     uint32
}

nt!_ALPC_MESSAGE_ATTRIBUTES

+0x000 AllocatedAttributes : Uint4B
+0x004 ValidAttributes  : Uint4B

type ALPC_PORT_ATTRIBUTES Uses

type ALPC_PORT_ATTRIBUTES struct {
    Flags               uint32
    SecurityQos         SECURITY_QUALITY_OF_SERVICE
    MaxMessageLength    uint64 // must be filled out
    MemoryBandwidth     uint64
    MaxPoolUsage        uint64
    MaxSectionSize      uint64
    MaxViewSize         uint64
    MaxTotalSectionSize uint64
    DupObjectTypes      uint32
    Reserved            uint32
}

nt!_ALPC_PORT_ATTRIBUTES

+0x000 Flags            : Uint4B
+0x004 SecurityQos      : _SECURITY_QUALITY_OF_SERVICE
+0x010 MaxMessageLength : Uint8B
+0x018 MemoryBandwidth  : Uint8B
+0x020 MaxPoolUsage     : Uint8B
+0x028 MaxSectionSize   : Uint8B
+0x030 MaxViewSize      : Uint8B
+0x038 MaxTotalSectionSize : Uint8B
+0x040 DupObjectTypes   : Uint4B
+0x044 Reserved         : Uint4B

type ATOM Uses

type ATOM uint16

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func RegisterClassEx Uses

func RegisterClassEx(wndClassEx *WNDCLASSEX) ATOM

type AlpcPortContext Uses

type AlpcPortContext struct {
    Handle HANDLE
}

type AlpcShortMessage Uses

type AlpcShortMessage struct {
    PORT_MESSAGE
    Data [SHORT_MESSAGE_MAX_PAYLOAD]byte
}

LPC uses the first 4 bytes of the payload as an LPC Command, but this is NOT represented here, to allow the use of raw ALPC. For legacy LPC, callers must include the command as part of their payload.

func NewAlpcShortMessage Uses

func NewAlpcShortMessage() AlpcShortMessage

func (*AlpcShortMessage) GetData Uses

func (sm *AlpcShortMessage) GetData() []byte

TODO - is this still useful?

func (*AlpcShortMessage) Reset Uses

func (sm *AlpcShortMessage) Reset()

func (*AlpcShortMessage) SetData Uses

func (sm *AlpcShortMessage) SetData(d []byte) (e error)

type BITMAP Uses

type BITMAP struct {
    BmType       int32
    BmWidth      int32
    BmHeight     int32
    BmWidthBytes int32
    BmPlanes     uint16
    BmBitsPixel  uint16
    BmBits       unsafe.Pointer
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183371.aspx

type BITMAPINFO Uses

type BITMAPINFO struct {
    BmiHeader BITMAPINFOHEADER
    BmiColors *RGBQUAD
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183375.aspx

type BITMAPINFOHEADER Uses

type BITMAPINFOHEADER struct {
    BiSize          uint32
    BiWidth         int32
    BiHeight        int32
    BiPlanes        uint16
    BiBitCount      uint16
    BiCompression   uint32
    BiSizeImage     uint32
    BiXPelsPerMeter int32
    BiYPelsPerMeter int32
    BiClrUsed       uint32
    BiClrImportant  uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183376.aspx

type BOOL Uses

type BOOL int32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func BoolToBOOL Uses

func BoolToBOOL(value bool) BOOL

type BROWSEINFO Uses

type BROWSEINFO struct {
    Owner        HWND
    Root         *uint16
    DisplayName  *uint16
    Title        *uint16
    Flags        uint32
    CallbackFunc uintptr
    LParam       uintptr
    Image        int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb773205.aspx

type CLIENT_ID Uses

type CLIENT_ID struct {
    UniqueProcess uintptr
    UniqueThread  uintptr
}

nt!_CLIENT_ID

+0x000 UniqueProcess    : Ptr64 Void
+0x008 UniqueThread     : Ptr64 Void

type COLORREF Uses

type COLORREF uint32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func SetBkColor Uses

func SetBkColor(hdc HDC, crColor COLORREF) COLORREF

func SetTextColor Uses

func SetTextColor(hdc HDC, crColor COLORREF) COLORREF

type CONSOLE_SCREEN_BUFFER_INFO Uses

type CONSOLE_SCREEN_BUFFER_INFO struct {
    DwSize              COORD
    DwCursorPosition    COORD
    WAttributes         uint16
    SrWindow            SMALL_RECT
    DwMaximumWindowSize COORD
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms682093.aspx

func GetConsoleScreenBufferInfo Uses

func GetConsoleScreenBufferInfo(hConsoleOutput HANDLE) *CONSOLE_SCREEN_BUFFER_INFO

type COORD Uses

type COORD struct {
    X, Y int16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms682119.aspx

type CREATESTRUCT Uses

type CREATESTRUCT struct {
    CreateParams uintptr
    Instance     HINSTANCE
    Menu         HMENU
    Parent       HWND
    Cy, Cx       int32
    Y, X         int32
    Style        int32
    Name         *uint16
    Class        *uint16
    // contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms632603.aspx

type DEVMODE Uses

type DEVMODE struct {
    DmDeviceName       [CCHDEVICENAME]uint16
    DmSpecVersion      uint16
    DmDriverVersion    uint16
    DmSize             uint16
    DmDriverExtra      uint16
    DmFields           uint32
    DmOrientation      int16
    DmPaperSize        int16
    DmPaperLength      int16
    DmPaperWidth       int16
    DmScale            int16
    DmCopies           int16
    DmDefaultSource    int16
    DmPrintQuality     int16
    DmColor            int16
    DmDuplex           int16
    DmYResolution      int16
    DmTTOption         int16
    DmCollate          int16
    DmFormName         [CCHFORMNAME]uint16
    DmLogPixels        uint16
    DmBitsPerPel       uint32
    DmPelsWidth        uint32
    DmPelsHeight       uint32
    DmDisplayFlags     uint32
    DmDisplayFrequency uint32
    DmICMMethod        uint32
    DmICMIntent        uint32
    DmMediaType        uint32
    DmDitherType       uint32
    DmReserved1        uint32
    DmReserved2        uint32
    DmPanningWidth     uint32
    DmPanningHeight    uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183565.aspx

type DIBSECTION Uses

type DIBSECTION struct {
    DsBm        BITMAP
    DsBmih      BITMAPINFOHEADER
    DsBitfields [3]uint32
    DshSection  HANDLE
    DsOffset    uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183567.aspx

type DISPPARAMS Uses

type DISPPARAMS struct {
    Rgvarg            uintptr
    RgdispidNamedArgs uintptr
    CArgs             uint32
    CNamedArgs        uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms221416.aspx

type DOCINFO Uses

type DOCINFO struct {
    CbSize       int32
    LpszDocName  *uint16
    LpszOutput   *uint16
    LpszDatatype *uint16
    FwType       uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183574.aspx

type DWMFLIP3DWINDOWPOLICY Uses

type DWMFLIP3DWINDOWPOLICY int32

enum-lite implementation for the following constant structure

type DWMNCRENDERINGPOLICY Uses

type DWMNCRENDERINGPOLICY int32

enum-lite implementation for the following constant structure

type DWMTRANSITION_OWNEDWINDOW_TARGET Uses

type DWMTRANSITION_OWNEDWINDOW_TARGET int32

enum-lite implementation for the following constant structure

type DWMWINDOWATTRIBUTE Uses

type DWMWINDOWATTRIBUTE int32

enum-lite implementation for the following constant structure

type DWM_BLURBEHIND Uses

type DWM_BLURBEHIND struct {
    DwFlags uint32
    // contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969500.aspx

type DWM_FRAME_COUNT Uses

type DWM_FRAME_COUNT uint64

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type DWM_PRESENT_PARAMETERS Uses

type DWM_PRESENT_PARAMETERS struct {
    // contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969501.aspx

type DWM_SHOWCONTACT Uses

type DWM_SHOWCONTACT int32

enum-lite implementation for the following constant structure

type DWM_SOURCE_FRAME_SAMPLING Uses

type DWM_SOURCE_FRAME_SAMPLING int32

enum-lite implementation for the following constant structure

type DWM_THUMBNAIL_PROPERTIES Uses

type DWM_THUMBNAIL_PROPERTIES struct {
    // contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969502.aspx

type DWM_TIMING_INFO Uses

type DWM_TIMING_INFO struct {
    // contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969503.aspx

type DWORD Uses

type DWORD uint32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type ENHMETAHEADER Uses

type ENHMETAHEADER struct {
    IType          uint32
    NSize          uint32
    RclBounds      RECT
    RclFrame       RECT
    DSignature     uint32
    NVersion       uint32
    NBytes         uint32
    NRecords       uint32
    NHandles       uint16
    SReserved      uint16
    NDescription   uint32
    OffDescription uint32
    NPalEntries    uint32
    SzlDevice      SIZE
    SzlMillimeters SIZE
    CbPixelFormat  uint32
    OffPixelFormat uint32
    BOpenGL        uint32
    SzlMicrometers SIZE
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162607.aspx

type EVENTLOGRECORD Uses

type EVENTLOGRECORD struct {
    Length              uint32
    Reserved            uint32
    RecordNumber        uint32
    TimeGenerated       uint32
    TimeWritten         uint32
    EventID             uint32
    EventType           uint16
    NumStrings          uint16
    EventCategory       uint16
    ReservedFlags       uint16
    ClosingRecordNumber uint32
    StringOffset        uint32
    UserSidLength       uint32
    UserSidOffset       uint32
    DataLength          uint32
    DataOffset          uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa363646.aspx

type EVENT_TRACE_PROPERTIES Uses

type EVENT_TRACE_PROPERTIES struct {
    Wnode               WNODE_HEADER
    BufferSize          uint32
    MinimumBuffers      uint32
    MaximumBuffers      uint32
    MaximumFileSize     uint32
    LogFileMode         uint32
    FlushTimer          uint32
    EnableFlags         uint32
    AgeLimit            int32
    NumberOfBuffers     uint32
    FreeBuffers         uint32
    EventsLost          uint32
    BuffersWritten      uint32
    LogBuffersLost      uint32
    RealTimeBuffersLost uint32
    LoggerThreadId      HANDLE
    LogFileNameOffset   uint32
    LoggerNameOffset    uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa363784(v=vs.85).aspx

type EXCEPINFO Uses

type EXCEPINFO struct {
    WCode             uint16
    WReserved         uint16
    BstrSource        *uint16
    BstrDescription   *uint16
    BstrHelpFile      *uint16
    DwHelpContext     uint32
    PvReserved        uintptr
    PfnDeferredFillIn uintptr
    Scode             int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms221133.aspx

type FILETIME Uses

type FILETIME struct {
    DwLowDateTime  uint32
    DwHighDateTime uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724284.aspx

type GESTURE_TYPE Uses

type GESTURE_TYPE int32

enum-lite implementation for the following constant structure

type GUID Uses

type GUID struct {
    Data1 uint32
    Data2 uint16
    Data3 uint16
    Data4 [8]byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa373931.aspx

type GdiplusStartupInput Uses

type GdiplusStartupInput struct {
    GdiplusVersion           uint32
    DebugEventCallback       uintptr
    SuppressBackgroundThread BOOL
    SuppressExternalCodecs   BOOL
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms534067.aspx

type GdiplusStartupOutput Uses

type GdiplusStartupOutput struct {
    NotificationHook   uintptr
    NotificationUnhook uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms534068.aspx

type HACCEL Uses

type HACCEL HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HANDLE Uses

type HANDLE uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateToolhelp32Snapshot Uses

func CreateToolhelp32Snapshot(flags, processId uint32) HANDLE

func GetClipboardData Uses

func GetClipboardData(uFormat uint) HANDLE

func GetCurrentThread Uses

func GetCurrentThread() HANDLE

func GetWindowThreadProcessId Uses

func GetWindowThreadProcessId(hwnd HWND) (HANDLE, int)

func NtAlpcAcceptConnectPort Uses

func NtAlpcAcceptConnectPort(
    hSrvConnPort HANDLE,
    flags uint32,
    pObjAttr *OBJECT_ATTRIBUTES,
    pPortAttr *ALPC_PORT_ATTRIBUTES,
    pContext *AlpcPortContext,
    pConnReq *AlpcShortMessage,
    pConnMsgAttrs *ALPC_MESSAGE_ATTRIBUTES,
    accept uintptr,
) (hPort HANDLE, e error)

NTSTATUS NtAlpcAcceptConnectPort(

__out PHANDLE PortHandle,
__in HANDLE ConnectionPortHandle,
__in ULONG Flags,
__in POBJECT_ATTRIBUTES ObjectAttributes,
__in PALPC_PORT_ATTRIBUTES PortAttributes,
__in_opt PVOID PortContext,
__in PPORT_MESSAGE ConnectionRequest,
__inout_opt PALPC_MESSAGE_ATTRIBUTES ConnectionMessageAttributes,
__in BOOLEAN AcceptConnection
);

func NtAlpcCreatePort Uses

func NtAlpcCreatePort(pObjectAttributes *OBJECT_ATTRIBUTES, pPortAttributes *ALPC_PORT_ATTRIBUTES) (hPort HANDLE, e error)

NTSTATUS NtAlpcCreatePort(

__out PHANDLE PortHandle,
__in POBJECT_ATTRIBUTES ObjectAttributes,
__in_opt PALPC_PORT_ATTRIBUTES PortAttributes
);

func OpenEventLog Uses

func OpenEventLog(servername string, sourcename string) HANDLE

func OpenProcess Uses

func OpenProcess(desiredAccess int, inheritHandle bool, processId uintptr) (h HANDLE, e error)

func OpenSCManager Uses

func OpenSCManager(lpMachineName, lpDatabaseName string, dwDesiredAccess uint32) (HANDLE, error)

func OpenService Uses

func OpenService(hSCManager HANDLE, lpServiceName string, dwDesiredAccess uint32) (HANDLE, error)

func OpenThread Uses

func OpenThread(desiredAccess int, inheritHandle bool, threadId uintptr) (h HANDLE, e error)

func SetClipboardData Uses

func SetClipboardData(uFormat uint, hMem HANDLE) HANDLE

type HARDWAREINPUT Uses

type HARDWAREINPUT struct {
    UMsg    uint32
    WParamL uint16
    WParamH uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms646269(v=vs.85).aspx

type HBITMAP Uses

type HBITMAP HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateCompatibleBitmap Uses

func CreateCompatibleBitmap(hdc HDC, width, height uint) HBITMAP

func CreateDIBSection Uses

func CreateDIBSection(hdc HDC, pbmi *BITMAPINFO, iUsage uint, ppvBits *unsafe.Pointer, hSection HANDLE, dwOffset uint) HBITMAP

func GdipCreateHBITMAPFromBitmap Uses

func GdipCreateHBITMAPFromBitmap(bitmap *uintptr, background uint32) (HBITMAP, error)

type HBRUSH Uses

type HBRUSH HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateBrushIndirect Uses

func CreateBrushIndirect(lplb *LOGBRUSH) HBRUSH

type HCURSOR Uses

type HCURSOR HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func LoadCursor Uses

func LoadCursor(instance HINSTANCE, cursorName *uint16) HCURSOR

func SetCursor Uses

func SetCursor(cursor HCURSOR) HCURSOR

type HDC Uses

type HDC HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func BeginPaint Uses

func BeginPaint(hwnd HWND, paint *PAINTSTRUCT) HDC

func CreateCompatibleDC Uses

func CreateCompatibleDC(hdc HDC) HDC

func CreateDC Uses

func CreateDC(lpszDriver, lpszDevice, lpszOutput *uint16, lpInitData *DEVMODE) HDC

func CreateEnhMetaFile Uses

func CreateEnhMetaFile(hdcRef HDC, lpFilename *uint16, lpRect *RECT, lpDescription *uint16) HDC

func CreateIC Uses

func CreateIC(lpszDriver, lpszDevice, lpszOutput *uint16, lpdvmInit *DEVMODE) HDC

func GetDC Uses

func GetDC(hwnd HWND) HDC

func ResetDC Uses

func ResetDC(hdc HDC, lpInitData *DEVMODE) HDC

type HDROP Uses

type HDROP HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HDWP Uses

type HDWP HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HENHMETAFILE Uses

type HENHMETAFILE HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CloseEnhMetaFile Uses

func CloseEnhMetaFile(hdc HDC) HENHMETAFILE

func CopyEnhMetaFile Uses

func CopyEnhMetaFile(hemfSrc HENHMETAFILE, lpszFile *uint16) HENHMETAFILE

func GetEnhMetaFile Uses

func GetEnhMetaFile(lpszMetaFile *uint16) HENHMETAFILE

type HFONT Uses

type HFONT HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateFontIndirect Uses

func CreateFontIndirect(logFont *LOGFONT) HFONT

type HGDIOBJ Uses

type HGDIOBJ HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GetCurrentObject Uses

func GetCurrentObject(hdc HDC, uObjectType uint32) HGDIOBJ

func GetStockObject Uses

func GetStockObject(fnObject int) HGDIOBJ

func SelectObject Uses

func SelectObject(hdc HDC, hgdiobj HGDIOBJ) HGDIOBJ

type HGLOBAL Uses

type HGLOBAL HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GlobalAlloc Uses

func GlobalAlloc(uFlags uint, dwBytes uint32) HGLOBAL

func LoadResource Uses

func LoadResource(hModule HMODULE, hResInfo HRSRC) HGLOBAL

type HGLRC Uses

type HGLRC HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func WglCreateContext Uses

func WglCreateContext(hdc HDC) HGLRC

func WglCreateLayerContext Uses

func WglCreateLayerContext(hdc HDC, iLayerPlane int) HGLRC

type HHOOK Uses

type HHOOK HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func SetWindowsHookEx Uses

func SetWindowsHookEx(idHook int, lpfn HOOKPROC, hMod HINSTANCE, dwThreadId DWORD) HHOOK

type HICON Uses

type HICON HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateIcon Uses

func CreateIcon(instance HINSTANCE, nWidth, nHeight int, cPlanes, cBitsPerPixel byte, ANDbits, XORbits *byte) HICON

func ExtractIcon Uses

func ExtractIcon(lpszExeFileName string, nIconIndex int) HICON

func LoadIcon Uses

func LoadIcon(instance HINSTANCE, iconName *uint16) HICON

type HIMAGELIST Uses

type HIMAGELIST HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func ImageList_Create Uses

func ImageList_Create(cx, cy int, flags uint, cInitial, cGrow int) HIMAGELIST

type HINSTANCE Uses

type HINSTANCE HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GetModuleHandle Uses

func GetModuleHandle(modulename string) HINSTANCE

type HKEY Uses

type HKEY HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

const (
    HKEY_CLASSES_ROOT     HKEY = 0x80000000
    HKEY_CURRENT_USER     HKEY = 0x80000001
    HKEY_LOCAL_MACHINE    HKEY = 0x80000002
    HKEY_USERS            HKEY = 0x80000003
    HKEY_PERFORMANCE_DATA HKEY = 0x80000004
    HKEY_CURRENT_CONFIG   HKEY = 0x80000005
    HKEY_DYN_DATA         HKEY = 0x80000006
)

Registry predefined keys

func RegCreateKey Uses

func RegCreateKey(hKey HKEY, subKey string) HKEY

func RegOpenKeyEx Uses

func RegOpenKeyEx(hKey HKEY, subKey string, samDesired uint32) HKEY

type HKL Uses

type HKL HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HMENU Uses

type HMENU HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HMODULE Uses

type HMODULE HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HMONITOR Uses

type HMONITOR HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func MonitorFromPoint Uses

func MonitorFromPoint(x, y int, dwFlags uint32) HMONITOR

func MonitorFromRect Uses

func MonitorFromRect(rc *RECT, dwFlags uint32) HMONITOR

func MonitorFromWindow Uses

func MonitorFromWindow(hwnd HWND, dwFlags uint32) HMONITOR

type HOOKPROC Uses

type HOOKPROC func(int, WPARAM, LPARAM) LRESULT

type HPEN Uses

type HPEN HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func ExtCreatePen Uses

func ExtCreatePen(dwPenStyle, dwWidth uint, lplb *LOGBRUSH, dwStyleCount uint, lpStyle *uint) HPEN

type HRESULT Uses

type HRESULT int32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CoInitializeEx Uses

func CoInitializeEx(coInit uintptr) HRESULT

func DwmEnableBlurBehindWindow Uses

func DwmEnableBlurBehindWindow(hWnd HWND, pBlurBehind *DWM_BLURBEHIND) HRESULT

func DwmEnableMMCSS Uses

func DwmEnableMMCSS(fEnableMMCSS bool) HRESULT

func DwmExtendFrameIntoClientArea Uses

func DwmExtendFrameIntoClientArea(hWnd HWND, pMarInset *MARGINS) HRESULT

func DwmFlush Uses

func DwmFlush() HRESULT

func DwmGetColorizationColor Uses

func DwmGetColorizationColor(pcrColorization *uint32, pfOpaqueBlend *BOOL) HRESULT

func DwmGetCompositionTimingInfo Uses

func DwmGetCompositionTimingInfo(hWnd HWND, pTimingInfo *DWM_TIMING_INFO) HRESULT

func DwmGetTransportAttributes Uses

func DwmGetTransportAttributes(pfIsRemoting *BOOL, pfIsConnected *BOOL, pDwGeneration *uint32) HRESULT

func DwmInvalidateIconicBitmaps Uses

func DwmInvalidateIconicBitmaps(hWnd HWND) HRESULT

func DwmIsCompositionEnabled Uses

func DwmIsCompositionEnabled(pfEnabled *BOOL) HRESULT

func DwmModifyPreviousDxFrameDuration Uses

func DwmModifyPreviousDxFrameDuration(hWnd HWND, cRefreshes int, fRelative bool) HRESULT

func DwmQueryThumbnailSourceSize Uses

func DwmQueryThumbnailSourceSize(hThumbnail HTHUMBNAIL, pSize *SIZE) HRESULT

func DwmRegisterThumbnail Uses

func DwmRegisterThumbnail(hWndDestination HWND, hWndSource HWND, phThumbnailId *HTHUMBNAIL) HRESULT

func DwmSetDxFrameDuration Uses

func DwmSetDxFrameDuration(hWnd HWND, cRefreshes int) HRESULT

func DwmSetIconicLivePreviewBitmap Uses

func DwmSetIconicLivePreviewBitmap(hWnd HWND, hbmp HBITMAP, pptClient *POINT, dwSITFlags uint32) HRESULT

func DwmSetIconicThumbnail Uses

func DwmSetIconicThumbnail(hWnd HWND, hbmp HBITMAP, dwSITFlags uint32) HRESULT

func DwmSetPresentParameters Uses

func DwmSetPresentParameters(hWnd HWND, pPresentParams *DWM_PRESENT_PARAMETERS) HRESULT

func DwmSetWindowAttribute Uses

func DwmSetWindowAttribute(hWnd HWND, dwAttribute uint32, pvAttribute LPCVOID, cbAttribute uint32) HRESULT

func DwmUnregisterThumbnail Uses

func DwmUnregisterThumbnail(hThumbnailId HTHUMBNAIL) HRESULT

func DwmUpdateThumbnailProperties Uses

func DwmUpdateThumbnailProperties(hThumbnailId HTHUMBNAIL, ptnProperties *DWM_THUMBNAIL_PROPERTIES) HRESULT

type HRGN Uses

type HRGN HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HRSRC Uses

type HRSRC HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func FindResource Uses

func FindResource(hModule HMODULE, lpName, lpType *uint16) (HRSRC, error)

type HTHUMBNAIL Uses

type HTHUMBNAIL HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HWND Uses

type HWND HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateDialog Uses

func CreateDialog(hInstance HINSTANCE, lpTemplate *uint16, hWndParent HWND, lpDialogProc uintptr) HWND

func CreateWindowEx Uses

func CreateWindowEx(exStyle uint, className, windowName *uint16,
    style uint, x, y, width, height int, parent HWND, menu HMENU,
    instance HINSTANCE, param unsafe.Pointer) HWND

func FindWindowExW Uses

func FindWindowExW(hwndParent, hwndChildAfter HWND, className, windowName *uint16) HWND

func FindWindowW Uses

func FindWindowW(className, windowName *uint16) HWND

func GetConsoleWindow Uses

func GetConsoleWindow() HWND

func GetDlgItem Uses

func GetDlgItem(hDlg HWND, nIDDlgItem int) HWND

func SetCapture Uses

func SetCapture(hwnd HWND) HWND

func SetFocus Uses

func SetFocus(hwnd HWND) HWND

type HardwareInput Uses

type HardwareInput struct {
    // contains filtered or unexported fields
}

type IDispatch Uses

type IDispatch struct {
    // contains filtered or unexported fields
}

func ComQueryInterface Uses

func ComQueryInterface(unknown *IUnknown, id *GUID) *IDispatch

func (*IDispatch) AddRef Uses

func (this *IDispatch) AddRef() int32

func (*IDispatch) GetIDsOfName Uses

func (this *IDispatch) GetIDsOfName(names []string) []int32

func (*IDispatch) Invoke Uses

func (this *IDispatch) Invoke(dispid int32, dispatch int16, params ...interface{}) *VARIANT

func (*IDispatch) QueryInterface Uses

func (this *IDispatch) QueryInterface(id *GUID) *IDispatch

func (*IDispatch) Release Uses

func (this *IDispatch) Release() int32

type INITCOMMONCONTROLSEX Uses

type INITCOMMONCONTROLSEX struct {
    DwSize uint32
    DwICC  uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb775507.aspx

type INPUT Uses

type INPUT struct {
    Type uint32
    Mi   MOUSEINPUT
    Ki   KEYBDINPUT
    Hi   HARDWAREINPUT
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms646270(v=vs.85).aspx

type IStream Uses

type IStream struct {
    // contains filtered or unexported fields
}

func CreateStreamOnHGlobal Uses

func CreateStreamOnHGlobal(hGlobal HGLOBAL, fDeleteOnRelease bool) *IStream

func (*IStream) AddRef Uses

func (this *IStream) AddRef() int32

func (*IStream) QueryInterface Uses

func (this *IStream) QueryInterface(id *GUID) *IDispatch

func (*IStream) Release Uses

func (this *IStream) Release() int32

type IUnknown Uses

type IUnknown struct {
    // contains filtered or unexported fields
}

func (*IUnknown) AddRef Uses

func (this *IUnknown) AddRef() int32

func (*IUnknown) QueryInterface Uses

func (this *IUnknown) QueryInterface(id *GUID) *IDispatch

func (*IUnknown) Release Uses

func (this *IUnknown) Release() int32

type KBDLLHOOKSTRUCT Uses

type KBDLLHOOKSTRUCT struct {
    VkCode      DWORD
    ScanCode    DWORD
    Flags       DWORD
    Time        DWORD
    DwExtraInfo ULONG_PTR
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644967(v=vs.85).aspx

type KEYBDINPUT Uses

type KEYBDINPUT struct {
    WVk         uint16
    WScan       uint16
    DwFlags     uint32
    Time        uint32
    DwExtraInfo uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms646271(v=vs.85).aspx

type KbdInput Uses

type KbdInput struct {
    // contains filtered or unexported fields
}

type LOGBRUSH Uses

type LOGBRUSH struct {
    LbStyle uint32
    LbColor COLORREF
    LbHatch uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145035.aspx

type LOGFONT Uses

type LOGFONT struct {
    Height         int32
    Width          int32
    Escapement     int32
    Orientation    int32
    Weight         int32
    Italic         byte
    Underline      byte
    StrikeOut      byte
    CharSet        byte
    OutPrecision   byte
    ClipPrecision  byte
    Quality        byte
    PitchAndFamily byte
    FaceName       [LF_FACESIZE]uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145037.aspx

type LPARAM Uses

type LPARAM uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type LPCVOID Uses

type LPCVOID unsafe.Pointer

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type LRESULT Uses

type LRESULT uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CallNextHookEx Uses

func CallNextHookEx(hhk HHOOK, nCode int, wParam WPARAM, lParam LPARAM) LRESULT

type LVCOLUMN Uses

type LVCOLUMN struct {
    Mask       uint32
    Fmt        int32
    Cx         int32
    PszText    *uint16
    CchTextMax int32
    ISubItem   int32
    IImage     int32
    IOrder     int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774743.aspx

type LVHITTESTINFO Uses

type LVHITTESTINFO struct {
    Pt       POINT
    Flags    uint32
    IItem    int32
    ISubItem int32
    IGroup   int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774754.aspx

type LVITEM Uses

type LVITEM struct {
    Mask       uint32
    IItem      int32
    ISubItem   int32
    State      uint32
    StateMask  uint32
    PszText    *uint16
    CchTextMax int32
    IImage     int32
    LParam     uintptr
    IIndent    int32
    IGroupId   int32
    CColumns   uint32
    PuColumns  uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774760.aspx

type MARGINS Uses

type MARGINS struct {
    CxLeftWidth, CxRightWidth, CyTopHeight, CyBottomHeight int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb773244.aspx

type MODULEENTRY32 Uses

type MODULEENTRY32 struct {
    Size         uint32
    ModuleID     uint32
    ProcessID    uint32
    GlblcntUsage uint32
    ProccntUsage uint32
    ModBaseAddr  *uint8
    ModBaseSize  uint32
    HModule      HMODULE
    SzModule     [MAX_MODULE_NAME32 + 1]uint16
    SzExePath    [MAX_PATH]uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms684225.aspx

type MONITORINFO Uses

type MONITORINFO struct {
    CbSize    uint32
    RcMonitor RECT
    RcWork    RECT
    DwFlags   uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145065.aspx

type MONITORINFOEX Uses

type MONITORINFOEX struct {
    MONITORINFO
    SzDevice [CCHDEVICENAME]uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145066.aspx

type MOUSEINPUT Uses

type MOUSEINPUT struct {
    Dx          int32
    Dy          int32
    MouseData   uint32
    DwFlags     uint32
    Time        uint32
    DwExtraInfo uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms646273(v=vs.85).aspx

type MSG Uses

type MSG struct {
    Hwnd    HWND
    Message uint32
    WParam  uintptr
    LParam  uintptr
    Time    uint32
    Pt      POINT
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644958.aspx

type MilMatrix3x2D Uses

type MilMatrix3x2D struct {
    S_11, S_12, S_21, S_22 float64
    DX, DY                 float64
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd389402.aspx

type MouseInput Uses

type MouseInput struct {
    // contains filtered or unexported fields
}

type NMHDR Uses

type NMHDR struct {
    HwndFrom HWND
    IdFrom   uintptr
    Code     uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb775514.aspx

type NMITEMACTIVATE Uses

type NMITEMACTIVATE struct {
    Hdr       NMHDR
    IItem     int32
    ISubItem  int32
    UNewState uint32
    UOldState uint32
    UChanged  uint32
    PtAction  POINT
    LParam    uintptr
    UKeyFlags uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774771.aspx

type NMLISTVIEW Uses

type NMLISTVIEW struct {
    Hdr       NMHDR
    IItem     int32
    ISubItem  int32
    UNewState uint32
    UOldState uint32
    UChanged  uint32
    PtAction  POINT
    LParam    uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774773.aspx

type NMLVDISPINFO Uses

type NMLVDISPINFO struct {
    Hdr  NMHDR
    Item LVITEM
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774780.aspx

type OBJECT_ATTRIBUTES Uses

type OBJECT_ATTRIBUTES struct {
    Length uint32

    RootDirectory HANDLE
    ObjectName    *UNICODE_STRING
    Attributes    uint32

    SecurityDescriptor       *SECURITY_DESCRIPTOR
    SecurityQualityOfService *SECURITY_QUALITY_OF_SERVICE
    // contains filtered or unexported fields
}

nt!_OBJECT_ATTRIBUTES

+0x000 Length           : Uint4B
+0x008 RootDirectory    : Ptr64 Void
+0x010 ObjectName       : Ptr64 _UNICODE_STRING
+0x018 Attributes       : Uint4B
+0x020 SecurityDescriptor : Ptr64 Void
+0x028 SecurityQualityOfService : Ptr64 Void

type OPENFILENAME Uses

type OPENFILENAME struct {
    StructSize      uint32
    Owner           HWND
    Instance        HINSTANCE
    Filter          *uint16
    CustomFilter    *uint16
    MaxCustomFilter uint32
    FilterIndex     uint32
    File            *uint16
    MaxFile         uint32
    FileTitle       *uint16
    MaxFileTitle    uint32
    InitialDir      *uint16
    Title           *uint16
    Flags           uint32
    FileOffset      uint16
    FileExtension   uint16
    DefExt          *uint16
    CustData        uintptr
    FnHook          uintptr
    TemplateName    *uint16
    PvReserved      unsafe.Pointer
    DwReserved      uint32
    FlagsEx         uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms646839.aspx

type PAINTSTRUCT Uses

type PAINTSTRUCT struct {
    Hdc         HDC
    FErase      BOOL
    RcPaint     RECT
    FRestore    BOOL
    FIncUpdate  BOOL
    RgbReserved [32]byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162768.aspx

type PIXELFORMATDESCRIPTOR Uses

type PIXELFORMATDESCRIPTOR struct {
    Size                   uint16
    Version                uint16
    DwFlags                uint32
    IPixelType             byte
    ColorBits              byte
    RedBits, RedShift      byte
    GreenBits, GreenShift  byte
    BlueBits, BlueShift    byte
    AlphaBits, AlphaShift  byte
    AccumBits              byte
    AccumRedBits           byte
    AccumGreenBits         byte
    AccumBlueBits          byte
    AccumAlphaBits         byte
    DepthBits, StencilBits byte
    AuxBuffers             byte
    ILayerType             byte
    Reserved               byte
    DwLayerMask            uint32
    DwVisibleMask          uint32
    DwDamageMask           uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd368826.aspx

type POINT Uses

type POINT struct {
    X, Y int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162805.aspx

type PORT_MESSAGE Uses

type PORT_MESSAGE struct {
    DataLength     uint16 // These are the two unnamed unions
    TotalLength    uint16 // without Length and ZeroInit
    Type           uint16
    DataInfoOffset uint16
    ClientId       CLIENT_ID
    MessageId      uint32

    ClientViewSize uint64
    // contains filtered or unexported fields
}

cf: http://j00ru.vexillium.org/?p=502 for legacy RPC nt!_PORT_MESSAGE

+0x000 u1               : <unnamed-tag>
+0x004 u2               : <unnamed-tag>
+0x008 ClientId         : _CLIENT_ID
+0x008 DoNotUseThisField : Float
+0x018 MessageId        : Uint4B
+0x020 ClientViewSize   : Uint8B
+0x020 CallbackId       : Uint4B

func (PORT_MESSAGE) CallbackId Uses

func (pm PORT_MESSAGE) CallbackId() uint32

func (PORT_MESSAGE) DoNotUseThisField Uses

func (pm PORT_MESSAGE) DoNotUseThisField() float64

type PROCESS_INFORMATION Uses

type PROCESS_INFORMATION struct {
    Process   HANDLE
    Thread    HANDLE
    ProcessId uint32
    ThreadId  uint32
}

func CreateProcessQuick Uses

func CreateProcessQuick(cmd string) (pi PROCESS_INFORMATION, e error)

type PVOID Uses

type PVOID unsafe.Pointer

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type QPC_TIME Uses

type QPC_TIME uint64

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type RECT Uses

type RECT struct {
    Left, Top, Right, Bottom int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162897.aspx

func GetClientRect Uses

func GetClientRect(hwnd HWND) *RECT

func GetWindowRect Uses

func GetWindowRect(hwnd HWND) *RECT

type RGBQUAD Uses

type RGBQUAD struct {
    RgbBlue     byte
    RgbGreen    byte
    RgbRed      byte
    RgbReserved byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162938.aspx

type RTL_USER_PROCESS_INFORMATION Uses

type RTL_USER_PROCESS_INFORMATION struct {
    Length           uint32
    Process          HANDLE
    Thread           HANDLE
    ClientId         CLIENT_ID
    ImageInformation SECTION_IMAGE_INFORMATION
}

combase!_RTL_USER_PROCESS_INFORMATION

+0x000 Length           : Uint4B
+0x008 Process          : Ptr64 Void
+0x010 Thread           : Ptr64 Void
+0x018 ClientId         : _CLIENT_ID
+0x028 ImageInformation : _SECTION_IMAGE_INFORMATION

type SECTION_IMAGE_INFORMATION Uses

type SECTION_IMAGE_INFORMATION struct {
    TransferAddress             uintptr
    ZeroBits                    uint32
    MaximumStackSize            uint64
    CommittedStackSize          uint64
    SubSystemType               uint32
    SubSystemMinorVersion       uint16
    SubSystemMajorVersion       uint16
    SubSystemVersion            uint32
    MajorOperatingSystemVersion uint16
    MinorOperatingSystemVersion uint16
    OperatingSystemVersion      uint32
    ImageCharacteristics        uint16
    DllCharacteristics          uint16
    Machine                     uint16
    ImageContainsCode           uint8
    ImageFlags                  uint8
    ComPlusFlags                uint8
    LoaderFlags                 uint32
    ImageFileSize               uint32
    CheckSum                    uint32
}

combase!_SECTION_IMAGE_INFORMATION

+0x000 TransferAddress  : Ptr64 Void
+0x008 ZeroBits         : Uint4B
+0x010 MaximumStackSize : Uint8B
+0x018 CommittedStackSize : Uint8B
+0x020 SubSystemType    : Uint4B
+0x024 SubSystemMinorVersion : Uint2B
+0x026 SubSystemMajorVersion : Uint2B
+0x024 SubSystemVersion : Uint4B
+0x028 MajorOperatingSystemVersion : Uint2B
+0x02a MinorOperatingSystemVersion : Uint2B
+0x028 OperatingSystemVersion : Uint4B
+0x02c ImageCharacteristics : Uint2B
+0x02e DllCharacteristics : Uint2B
+0x030 Machine          : Uint2B
+0x032 ImageContainsCode : UChar
+0x033 ImageFlags       : UChar
+0x033 ComPlusNativeReady : Pos 0, 1 Bit
+0x033 ComPlusILOnly    : Pos 1, 1 Bit
+0x033 ImageDynamicallyRelocated : Pos 2, 1 Bit
+0x033 ImageMappedFlat  : Pos 3, 1 Bit
+0x033 BaseBelow4gb     : Pos 4, 1 Bit
+0x033 ComPlusPrefer32bit : Pos 5, 1 Bit
+0x033 Reserved         : Pos 6, 2 Bits
+0x034 LoaderFlags      : Uint4B
+0x038 ImageFileSize    : Uint4B
+0x03c CheckSum         : Uint4B

func (*SECTION_IMAGE_INFORMATION) BaseBelow4gb Uses

func (si *SECTION_IMAGE_INFORMATION) BaseBelow4gb() bool

func (*SECTION_IMAGE_INFORMATION) ComPlusILOnly Uses

func (si *SECTION_IMAGE_INFORMATION) ComPlusILOnly() bool

func (*SECTION_IMAGE_INFORMATION) ComPlusNativeReady Uses

func (si *SECTION_IMAGE_INFORMATION) ComPlusNativeReady() bool

func (*SECTION_IMAGE_INFORMATION) ComPlusPrefer32bit Uses

func (si *SECTION_IMAGE_INFORMATION) ComPlusPrefer32bit() bool

func (*SECTION_IMAGE_INFORMATION) ImageDynamicallyRelocated Uses

func (si *SECTION_IMAGE_INFORMATION) ImageDynamicallyRelocated() bool

func (*SECTION_IMAGE_INFORMATION) ImageMappedFlat Uses

func (si *SECTION_IMAGE_INFORMATION) ImageMappedFlat() bool

type SECURITY_ATTRIBUTES Uses

type SECURITY_ATTRIBUTES struct {
    Length             uint32
    SecurityDescriptor uintptr
    InheritHandle      BOOL
}

type SECURITY_DESCRIPTOR Uses

type SECURITY_DESCRIPTOR struct {
    Revision byte
    Sbz1     byte
    Control  SECURITY_DESCRIPTOR_CONTROL
    Owner    uintptr
    Group    uintptr
    Sacl     *ACL
    Dacl     *ACL
}

func InitializeSecurityDescriptor Uses

func InitializeSecurityDescriptor(rev uint16) (pSecurityDescriptor *SECURITY_DESCRIPTOR, e error)

http://msdn.microsoft.com/en-us/library/windows/desktop/aa378863(v=vs.85).aspx

type SECURITY_DESCRIPTOR_CONTROL Uses

type SECURITY_DESCRIPTOR_CONTROL uint16

type SECURITY_QUALITY_OF_SERVICE Uses

type SECURITY_QUALITY_OF_SERVICE struct {
    Length              uint32
    ImpersonationLevel  uint32
    ContextTrackingMode byte
    EffectiveOnly       byte
    // contains filtered or unexported fields
}

http://www.nirsoft.net/kernel_struct/vista/SECURITY_QUALITY_OF_SERVICE.html

type SERVICE_STATUS Uses

type SERVICE_STATUS struct {
    DwServiceType             uint32
    DwCurrentState            uint32
    DwControlsAccepted        uint32
    DwWin32ExitCode           uint32
    DwServiceSpecificExitCode uint32
    DwCheckPoint              uint32
    DwWaitHint                uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms685996.aspx

type SID Uses

type SID struct {
    Revision            byte
    SubAuthorityCount   byte
    IdentifierAuthority SID_IDENTIFIER_AUTHORITY
    SubAuthority        uint32
}

typedef struct _SID // 4 elements, 0xC bytes (sizeof) { /*0x000*/ UINT8 Revision; /*0x001*/ UINT8 SubAuthorityCount; /*0x002*/ struct _SID_IDENTIFIER_AUTHORITY IdentifierAuthority; // 1 elements, 0x6 bytes (sizeof) /*0x008*/ ULONG32 SubAuthority[1]; }SID, *PSID;

type SID_IDENTIFIER_AUTHORITY Uses

type SID_IDENTIFIER_AUTHORITY struct {
    Value [6]byte
}

type SIZE Uses

type SIZE struct {
    CX, CY int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145106.aspx

type SMALL_RECT Uses

type SMALL_RECT struct {
    Left, Top, Right, Bottom int16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms686311.aspx

type STARTUPINFOW Uses

type STARTUPINFOW struct {
    Desktop       *uint16
    Title         *uint16
    X             uint32
    Y             uint32
    XSize         uint32
    YSize         uint32
    XCountChars   uint32
    YCountChars   uint32
    FillAttribute uint32
    Flags         uint32
    ShowWindow    uint16

    StdInput  HANDLE
    StdOutput HANDLE
    StdError  HANDLE
    // contains filtered or unexported fields
}

type SYSTEMTIME Uses

type SYSTEMTIME struct {
    Year         uint16
    Month        uint16
    DayOfWeek    uint16
    Day          uint16
    Hour         uint16
    Minute       uint16
    Second       uint16
    Milliseconds uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724950(v=vs.85).aspx

func GetSystemTime Uses

func GetSystemTime() *SYSTEMTIME

type TEXTMETRIC Uses

type TEXTMETRIC struct {
    TmHeight           int32
    TmAscent           int32
    TmDescent          int32
    TmInternalLeading  int32
    TmExternalLeading  int32
    TmAveCharWidth     int32
    TmMaxCharWidth     int32
    TmWeight           int32
    TmOverhang         int32
    TmDigitizedAspectX int32
    TmDigitizedAspectY int32
    TmFirstChar        uint16
    TmLastChar         uint16
    TmDefaultChar      uint16
    TmBreakChar        uint16
    TmItalic           byte
    TmUnderlined       byte
    TmStruckOut        byte
    TmPitchAndFamily   byte
    TmCharSet          byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145132.aspx

type TOOLINFO Uses

type TOOLINFO struct {
    CbSize     uint32
    UFlags     uint32
    Hwnd       HWND
    UId        uintptr
    Rect       RECT
    Hinst      HINSTANCE
    LpszText   *uint16
    LParam     uintptr
    LpReserved unsafe.Pointer
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb760256.aspx

type TRACEHANDLE Uses

type TRACEHANDLE uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func StartTrace Uses

func StartTrace(lpSessionName string, props *EVENT_TRACE_PROPERTIES) (hTrace TRACEHANDLE, e error)

type TRACKMOUSEEVENT Uses

type TRACKMOUSEEVENT struct {
    CbSize      uint32
    DwFlags     uint32
    HwndTrack   HWND
    DwHoverTime uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms645604.aspx

type ULONG_PTR Uses

type ULONG_PTR uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type UNICODE_STRING Uses

type UNICODE_STRING struct {
    Length        uint16
    MaximumLength uint16

    Buffer *uint16
    // contains filtered or unexported fields
}

nt!_UNICODE_STRING

+0x000 Length           : Uint2B
+0x002 MaximumLength    : Uint2B
+0x008 Buffer           : Ptr64 Uint2B

type UNSIGNED_RATIO Uses

type UNSIGNED_RATIO struct {
    // contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969505.aspx

type VARIANT Uses

type VARIANT struct {
    VT         uint16 //  2
    WReserved1 uint16 //  4
    WReserved2 uint16 //  6
    WReserved3 uint16 //  8
    Val        int64  // 16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms221627.aspx

func ComInvoke Uses

func ComInvoke(disp *IDispatch, dispid int32, dispatch int16, params ...interface{}) (result *VARIANT)

type WNDCLASSEX Uses

type WNDCLASSEX struct {
    Size       uint32
    Style      uint32
    WndProc    uintptr
    ClsExtra   int32
    WndExtra   int32
    Instance   HINSTANCE
    Icon       HICON
    Cursor     HCURSOR
    Background HBRUSH
    MenuName   *uint16
    ClassName  *uint16
    IconSm     HICON
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms633577.aspx

type WNDENUMPROC Uses

type WNDENUMPROC func(HWND, LPARAM) LRESULT

https://msdn.microsoft.com/en-us/library/windows/desktop/ms633498(v=vs.85).aspx

type WNODE_HEADER Uses

type WNODE_HEADER struct {
    BufferSize        uint32
    ProviderId        uint32
    HistoricalContext uint64
    KernelHandle      HANDLE
    Guid              GUID
    ClientContext     uint32
    Flags             uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa364160(v=vs.85).aspx

func (WNODE_HEADER) Linkage Uses

func (w WNODE_HEADER) Linkage() uint32

func (WNODE_HEADER) TimeStamp Uses

func (w WNODE_HEADER) TimeStamp() uint64

These partially compensate for the anonymous unions we removed, but there are no setters.

func (WNODE_HEADER) Version Uses

func (w WNODE_HEADER) Version() uint32

type WPARAM Uses

type WPARAM uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

Package w32 imports 5 packages (graph) and is imported by 49 packages. Updated 2018-04-29. Refresh now. Tools for package owners.