| Index | Manual | Download | Source | Macros | Embedded word Case ins.
Sitemap | Links | Forum | Tests | Projects

# winsreg.htm
Constants
Structures

This file can be included to program for Windows written in EuroAssembler.

It declares the most often used constant symbols and structures used for
Windows registry functions of MS Windows Application Programming Interface (WinAPI),
as they were derived from header files in [WindowsSDK].

    winsreg HEAD

↑ Constants
  Encoding of constant symbols used in WinAPI.

    ; Reserved Key Handles.
    HKEY_CLASSES_ROOT              = 80000000h
    HKEY_CURRENT_USER              = 80000001h
    HKEY_LOCAL_MACHINE             = 80000002h
    HKEY_USERS                     = 80000003h
    HKEY_PERFORMANCE_DATA          = 80000004h
    HKEY_CURRENT_CONFIG            = 80000005h
    HKEY_DYN_DATA                  = 80000006h

    ; Predefined Value Types.
    REG_NONE                       = 0 ; No value type
    REG_SZ                         = 1 ; Unicode nul terminated string
    REG_EXPAND_SZ                  = 2 ; Unicode nul terminated string (with environment variable references)
    REG_BINARY                     = 3 ; Free form binary
    REG_DWORD                      = 4 ; 32-bit number
    REG_DWORD_LITTLE_ENDIAN        = 4 ; 32-bit number (same as REG_DWORD)
    REG_DWORD_BIG_ENDIAN           = 5 ; 32-bit number
    REG_LINK                       = 6 ; Symbolic Link (unicode)
    REG_MULTI_SZ                   = 7 ; Multiple Unicode strings
    REG_RESOURCE_LIST              = 8 ; Resource list in the resource map
    REG_FULL_RESOURCE_DESCRIPTOR   = 9 ; Resource list in the hardware description
    REG_RESOURCE_REQUIREMENTS_LIST = 10;

    ; Predefined standard access types
    DELETE                         = 0x00010000
    READ_CONTROL                   = 0x00020000
    WRITE_DAC                      = 0x00040000
    WRITE_OWNER                    = 0x00080000
    SYNCHRONIZE                    = 0x00100000
    STANDARD_RIGHTS_READ           = READ_CONTROL
    STANDARD_RIGHTS_WRITE          = READ_CONTROL
    STANDARD_RIGHTS_EXECUTE        = READ_CONTROL
    STANDARD_RIGHTS_ALL            = 0x001F0000
    SPECIFIC_RIGHTS_ALL            = 0x0000FFFF

    ; Registry Specific Access Rights.
    KEY_QUERY_VALUE                = 0x00000001
    KEY_SET_VALUE                  = 0x00000002
    KEY_CREATE_SUB_KEY             = 0x00000004
    KEY_ENUMERATE_SUB_KEYS         = 0x00000008
    KEY_NOTIFY                     = 0x00000010
    KEY_CREATE_LINK                = 0x00000020
    KEY_READ                       = 0x00020019
    KEY_EXECUTE                    = 0x00020019
    KEY_WRITE                      = 0x00020006
    KEY_ALL_ACCESS                 = 0x000F003F

    ; EditFlags value of a file association PROGID registry key.
    FTA_None                       = 0x00000000
    FTA_Exclude                    = 0x00000001
    FTA_Show                       = 0x00000002
    FTA_HasExtension               = 0x00000004
    FTA_NoEdit                     = 0x00000008
    FTA_NoRemove                   = 0x00000010
    FTA_NoNewVerb                  = 0x00000020
    FTA_NoEditVerb                 = 0x00000040
    FTA_NoRemoveVerb               = 0x00000080
    FTA_NoEditDesc                 = 0x00000100
    FTA_NoEditIcon                 = 0x00000200
    FTA_NoEditDflt                 = 0x00000400
    FTA_NoEditVerbCmd              = 0x00000800
    FTA_NoEditVerbExe              = 0x00001000
    FTA_NoDDE                      = 0x00002000
    FTA_NoEditMIME                 = 0x00008000
    FTA_OpenIsSafe                 = 0x00010000
    FTA_AlwaysUnsafe               = 0x00020000
    FTA_NoRecentDocs               = 0x00100000
    FTA_SafeForElevation           = 0x00200000
    FTA_AlwaysUseDirectInvoke      = 0x00400000

    ; File System Notification flags

    SHCNE_RENAMEITEM               = 0x00000001
    SHCNE_CREATE                   = 0x00000002
    SHCNE_DELETE                   = 0x00000004
    SHCNE_MKDIR                    = 0x00000008
    SHCNE_RMDIR                    = 0x00000010
    SHCNE_MEDIAINSERTED            = 0x00000020
    SHCNE_MEDIAREMOVED             = 0x00000040
    SHCNE_DRIVEREMOVED             = 0x00000080
    SHCNE_DRIVEADD                 = 0x00000100
    SHCNE_NETSHARE                 = 0x00000200
    SHCNE_NETUNSHARE               = 0x00000400
    SHCNE_ATTRIBUTES               = 0x00000800
    SHCNE_UPDATEDIR                = 0x00001000
    SHCNE_UPDATEITEM               = 0x00002000
    SHCNE_SERVERDISCONNECT         = 0x00004000
    SHCNE_UPDATEIMAGE              = 0x00008000
    SHCNE_DRIVEADDGUI              = 0x00010000
    SHCNE_RENAMEFOLDER             = 0x00020000
    SHCNE_FREESPACE                = 0x00040000
    SHCNE_EXTENDED_EVENT           = 0x04000000
    SHCNE_ASSOCCHANGED             = 0x08000000
    SHCNE_DISKEVENTS               = 0x0002381F
    SHCNE_GLOBALEVENTS             = 0x0C0581E0
    SHCNE_ALLEVENTS                = 0x7FFFFFFF
    SHCNE_INTERRUPT                = 0x80000000
    SHCNEE_ORDERCHANGED            = 2 ; pidl2 is the changed folder
    SHCNEE_MSI_CHANGE              = 4 ; pidl2 is a SHChangeProductKeyAsIDList
    SHCNEE_MSI_UNINSTALL           = 5 ; pidl2 is a SHChangeProductKeyAsIDList

    ;  uFlags & SHCNF_TYPE is an ID which indicates what dwItem1 and dwItem2 mean
    SHCNF_IDLIST                   = 0x0000 ; LPITEMIDLIST
    SHCNF_PATHA                    = 0x0001 ; path name
    SHCNF_PRINTERA                 = 0x0002 ; printer friendly name
    SHCNF_DWORD                    = 0x0003 ; DWORD
    SHCNF_PATHW                    = 0x0005 ; path name
    SHCNF_PRINTERW                 = 0x0006 ; printer friendly name
    SHCNF_TYPE                     = 0x00FF
    SHCNF_FLUSH                    = 0x1000
    SHCNF_FLUSHNOWAIT              = 0x2000

     ENDHEAD winsreg

▲Back to the top▲