Clarion code for Enumerating Installed Device Interfaces with SetupDiGetClassDevsW

I wrote a while ago some Clarion code to ENUM all Devices …

WINSETUPAPI HDEVINFO SetupDiGetClassDevsW(
  const GUID *ClassGuid,
  PCWSTR     Enumerator,
  HWND       hwndParent,
  DWORD      Flags
);

this is my output..


![device1|690x216](upload://tTPCa1r2xDYjbNoM14Ck1zUv0r5.png) ![device2|497x500](upload://771eIWPyR4W5Rnt8c5XwT4kVGiu.png) ![device3|417x500](upload://rnSfKNHvg3DYMhA9EKs6LQuTcs8.png) 

and this is the code:

EnumDeviceInfo   ROUTINE
    
    
    Clear(QDevice)
    Free(QDevice)
    
    Clear(QDeviceTree)
    Free(QDeviceTree)
    
    Clear(QDeviceProperties)
    Free(QDeviceProperties)
    
    Clear(QDiskDeviceProperties)
    Free(QDiskDeviceProperties)
    
    Clear(QDiskDeviceTree)
    Free(QDiskDeviceTree)    
    
    Clear(QDiskDrive)
    !Free(QDiskDrive)
    
    Clear(QDiskDeviceTree)
    Free(QDiskDeviceTree)
    
    Clear(QActiveDisks)
    Free(QActiveDisks)
    
    Index = 0
    Index2 = 0
    Index3 = 0
    
    RecordsQDevicePropEnum = Records(QDevicePropEnum)
    
    IDDevice = 'P' & Chr(0) & 'C' & Chr(0) & 'I' & Chr(0) & UTF16ZERO
    
    DeviceInfoSetHandle = SetupDiGetClassDevsW(0,0,0, DIGCF_ALLCLASSES + DIGCF_PRESENT )
    !Message('DeviceInfoSetHandle : ' & DeviceInfoSetHandle)
    
    If DeviceInfoSetHandle <> 0
        MemberIndex = -1
        Loop 10000 Times
            MemberIndex = MemberIndex + 1
            Clear(SP_DEVINFO_DATA)
            SP_DEVINFO_DATA.Size = Size(SP_DEVINFO_DATA)
            Ret = SetupDiEnumDeviceInfo(DeviceInfoSetHandle,MemberIndex,Address(SP_DEVINFO_DATA))
            If Ret <> 1
                If GetLastError() = ERROR_NO_MORE_ITEMS !256
                    Break
                Else
                    Cycle
                End
            END
            
            Clear(QDevice)
            
            
            QDevSeed                    = QDevSeed + 1
            QDevice.Id                  = QDevSeed
            DeviceInstancePtr           = 0
            SP_DEVINFO_DATA.Size        = Size(SP_DEVINFO_DATA)
            R#                          = CM_Get_Parent(Address(DeviceInstancePtr),SP_DEVINFO_DATA.DeviceInstance,0)
            If R# = 0
                QDevice.ParentInstance = DeviceInstancePtr
            Else
                QDevice.ParentInstance = 0
            End
            QDevice.DeviceInstance      = SP_DEVINFO_DATA.DeviceInstance
            QDevice.ClassGuidBytes      = SP_DEVINFO_DATA.ClassGuid[1 : 16]
            GUID_INPUT                  = SP_DEVINFO_DATA.ClassGuid[1 : 16]
            Do GUIDSETUPSYS_TO_NAME
            QDevice.ClassNameA          = GUID_FULLNAMEA
            QDevice.ClassDisplayNameA   = GUID_FULLNAMEA
            QDevice.ClassDisplayName    = GUID_FULLNAME
            QDevice.ClassName           = GUID_FULLNAME
            QDevice.ClassDisplayNameLen = GUID_FULLNAME_LEN
            QDevice.ClassNameLen        = GUID_FULLNAME_LEN
            QDevice.ClassGuid           = GUID_OUTPUT_STR36
            
            DeviceNotAttached = 0
            
            IDX# = 0
L01         Loop
                IDX# = IDX# + 1
                If IDX# > RecordsQDevicePropEnum
                    Break
                End
                Get(QDevicePropEnum,IDX#)
                R# = SetupDiGetDeviceRegistryPropertyW(DeviceInfoSetHandle, Address(SP_DEVINFO_DATA), QDevicePropEnum.Code, 0, 0, 0, Address(RequiredBufferSize))
                If RequiredBufferSize < Size(LBUFFER256K) And RequiredBufferSize > 0
                    Clear(LBUFFER256K,-1)
                    QDevPropLinesOrdinal = 0
                    R# = SetupDiGetDeviceRegistryPropertyW(DeviceInfoSetHandle, Address(SP_DEVINFO_DATA), QDevicePropEnum.Code, Address(PropRegDataType), Address(LBUFFER256K), RequiredBufferSize, 0)
                    If R# = True
                        Clear(QDeviceProperties)
                        QDevicePropertiesSeed               = QDevicePropertiesSeed + 1
                        QDeviceProperties.Id                = QDevicePropertiesSeed
                        QDeviceProperties.DeviceInstance    = QDevice.DeviceInstance
                        QDeviceProperties.PropertyId        = QDevicePropEnum.Code
                        QDeviceProperties.Name              = QDevicePropEnum.Name
                        QDeviceProperties.NameA             = QDevicePropEnum.NameA
                        QDeviceProperties.NameLen           = QDevicePropEnum.NameLen
                        QDeviceProperties.ClassGuid36       = GUID_OUTPUT_STR36
                        QDeviceProperties.QDeviceId         = QDevice.Id
                        QDeviceProperties.DataType          = PropRegDataType
                        Case PropRegDataType
                        Of REG_NONE
                            QDevProps:DataTypeCString = 'REG_NONE'
                        Of REG_SZ     
                            QDevProps:DataTypeCString = 'REG_SZ'
                        Of REG_EXPAND_SZ          
                            QDevProps:DataTypeCString = 'REG_EXPAND_SZ'
                        Of REG_BINARY             
                            QDevProps:DataTypeCString = 'REG_BINARY'
                        Of REG_DWORD              
                            QDevProps:DataTypeCString = 'REG_DWORD'
                        Of REG_DWORD_LITTLE_ENDIAN
                            QDevProps:DataTypeCString = 'REG_DWORD_LITTLE_ENDIAN'
                        Of REG_DWORD_BIG_ENDIAN
                            QDevProps:DataTypeCString = 'REG_DWORD_BIG_ENDIAN'
                        Of REG_LINK            
                            QDevProps:DataTypeCString = 'REG_LINK'
                        Of REG_MULTI_SZ
                            QDevProps:DataTypeCString = 'REG_MULTI_SZ'
                        End
                        
                        QDeviceProperties.DataType = PropRegDataType
                        Case PropRegDataType
                        Of REG_NONE
                        OrOf REG_SZ     
                        OrOf REG_EXPAND_SZ 
                        OrOf REG_MULTI_SZ
                            !https://docs.microsoft.com/en-us/windows/win32/api/userenv/nf-userenv-expandenvironmentstringsforusera
                          
                            QDeviceProperties.RequiredBufferSize = RequiredBufferSize
                            
                            QDeviceProperties.Ansi = 1
                            P# = 0
                            Loop
                                P# = P# + 2
                                If P# >= RequiredBufferSize -2
                                    BREAK
                                End
                                If Val(LBUFFER256K[P#]) = 0
                                    QDeviceProperties.Ansi = 0
                                    BREAK
                                End
                            End
                            
                            If QDeviceProperties.Ansi = 1
                                ANSI_STRING_INPUT                   = LBUFFER256K[1 : RequiredBufferSize]
                                Do AnsiToUTF16
                                QDeviceProperties.ValueA            = LBUFFER256K[1 : RequiredBufferSize]
                                QDeviceProperties.Value             = UTF16_OUTPUT
                                QDeviceProperties.ValueLen          = UTF16_OUTPUT_LEN
                            ELSE
                                QDeviceProperties.Value             = LBUFFER256K[1 : RequiredBufferSize]
                                UTF16_INPUT                         = LBUFFER256K[1 : RequiredBufferSize]
                                Do UTF16ToAnsi
                                QDeviceProperties.ValueA            = ANSI_STRING_OUTPUT                                
                                QDeviceProperties.ValueLen          = RequiredBufferSize - 2                                
                            End
                            
                            QDeviceProperties.ValueDisplay      = QDeviceProperties.Value
                            QDeviceProperties.ValueDisplayA     = QDeviceProperties.ValueA
                            QDeviceProperties.ValueDisplayLen   = QDeviceProperties.ValueLen                             
                        Of REG_LINK   
                            QDeviceProperties.Value             = LBUFFER256K[1 : RequiredBufferSize]
                            QDeviceProperties.ValueA            = QDeviceProperties.Value
                            QDeviceProperties.ValueLen          = RequiredBufferSize - 2
                            
                            QDeviceProperties.ValueDisplay      = QDeviceProperties.Value
                            QDeviceProperties.ValueDisplayA     = QDeviceProperties.ValueA
                            QDeviceProperties.ValueDisplayLen   = QDeviceProperties.ValueLen                             
                        Of REG_BINARY             
                            st.SetValue(Clip(QDeviceProperties.ValueA))
                            st.ToHex(1,0)
                            QDeviceProperties.ValueDisplayA  = st.GetValuePtr()
                            
                        Of REG_DWORD_BIG_ENDIAN
                        OrOf REG_DWORD              
                        OrOf REG_DWORD_LITTLE_ENDIAN
                            Case PropRegDataType
                            Of REG_DWORD_BIG_ENDIAN
                                QDeviceProperties.Value             = (VAL(LBUFFER256K[1])*256*256*256) + (VAL(LBUFFER256K[2])*256*256) + (VAL(LBUFFER256K[3])*256) + (VAL(LBUFFER256K[4])*1)                                
                            Else
                                QDeviceProperties.Value             = (VAL(LBUFFER256K[4])*256*256*256) + (VAL(LBUFFER256K[3])*256*256) + (VAL(LBUFFER256K[2])*256) + (VAL(LBUFFER256K[1])*1)
                            End
                            !QDeviceProperties.Value             = (VAL(LBUFFER256K[1])*256*256*256) + (VAL(LBUFFER256K[2])*256*256) + (VAL(LBUFFER256K[3])*256) + (VAL(LBUFFER256K[4])*1)   
!                            
                            
                            QDeviceProperties.ValueA            = QDeviceProperties.Value
                            QDeviceProperties.ValueLen          = RequiredBufferSize - 2
                            
                            QDeviceProperties.ValueDisplay      = QDeviceProperties.Value
                            QDeviceProperties.ValueDisplayA     = QDeviceProperties.ValueA
                            QDeviceProperties.ValueDisplayLen   = QDeviceProperties.ValueLen                              
                        Of REG_QWORD
                        OrOf REG_QWORD_LITTLE_ENDIAN
!                            Case PropRegDataType
!                            Of REG_QWORD_BIG_ENDIAN
!                                QDeviceProperties.Value             = (VAL(LBUFFER256K[4])*256*256*256) + (VAL(LBUFFER256K[3])*256*256) + (VAL(LBUFFER256K[2])*256) + (VAL(LBUFFER256K[1])*1)
!                            Else
!                                QDeviceProperties.Value             = (VAL(LBUFFER256K[1])*256*256*256) + (VAL(LBUFFER256K[2])*256*256) + (VAL(LBUFFER256K[3])*256) + (VAL(LBUFFER256K[3])*1)
!                            End
!                            QDeviceProperties.ValueA            = QDeviceProperties.Value
!                            QDeviceProperties.ValueLen          = RequiredBufferSize - 2
!                            
!                            QDeviceProperties.ValueDisplay      = QDeviceProperties.Value
!                            QDeviceProperties.ValueDisplayA     = QDeviceProperties.ValueA
!                            QDeviceProperties.ValueDisplayLen   = QDeviceProperties.ValueLen                              
                        End    
              
                        
                        Case QDevicePropEnum.Code
                        OF SPDRP_FRIENDLYNAME
                            If QDeviceProperties.ValueLen > 0
                                QDevice.Name        = QDeviceProperties.ValueDisplay
                                QDevice.NameA       = QDeviceProperties.ValueDisplayA
                                QDevice.NameLen     = QDeviceProperties.ValueDisplayLen
                            End
                        Of SPDRP_PHYSICAL_DEVICE_OBJECT_NAME
                        OrOf SPDRP_DEVICEDESC
                            If QDevice.NameLen = 0 And QDeviceProperties.ValueDisplayLen > 0
                                QDevice.Name        = QDeviceProperties.ValueDisplay
                                QDevice.NameA       = QDeviceProperties.ValueDisplayA
                                QDevice.NameLen     = QDeviceProperties.ValueDisplayLen                                
                            End
                        End
                        Case QDevicePropEnum.Code           
                        Of SPDRP_DEVICEDESC                  !EQUATE(000000000h)  !// DeviceDesc (R/W)
                        Of SPDRP_HARDWAREID                  !EQUATE(000000001h)  !// HardwareID (R/W)
                        Of SPDRP_COMPATIBLEIDS               !EQUATE(000000002h)  !// CompatibleIDs (R/W)
                        Of SPDRP_UNUSED0                     !EQUATE(000000003h)  !// unused
                        Of SPDRP_SERVICE                     !EQUATE(000000004h)  !// Service (R/W)
                        Of SPDRP_UNUSED1                     !EQUATE(000000005h)  !// unused
                        Of SPDRP_UNUSED2                     !EQUATE(000000006h)  !// unused
                        Of SPDRP_CLASS                       !EQUATE(000000007h)  !// Class (R--tied to ClassGUID)
                        Of SPDRP_CLASSGUID                   !EQUATE(000000008h)  !// ClassGUID (R/W)
                        Of SPDRP_DRIVER                      !EQUATE(000000009h)  !// Driver (R/W)
                        Of SPDRP_CONFIGFLAGS                 !EQUATE(00000000Ah)  !// ConfigFlags (R/W)
                        Of SPDRP_MFG                         !EQUATE(00000000Bh)  !// Mfg (R/W)
                        Of SPDRP_FRIENDLYNAME                !EQUATE(00000000Ch)  !// FriendlyName (R/W)
                        Of SPDRP_LOCATION_INFORMATION        !EQUATE(00000000Dh)  !// LocationInformation (R/W)
                        Of SPDRP_PHYSICAL_DEVICE_OBJECT_NAME !EQUATE(00000000Eh)  !// PhysicalDeviceObjectName (R)
                            Case QDevice.ClassGuid !GUID_OUTPUT_STR36 !Clip(QDevice.ClassDisplayNameA)
                            Of GUID_SETUP_SYSCLASS_CDROM
                            OrOf GUID_SETUP_SYSCLASS_DiskDrive
                            OrOf GUID_SETUP_SYSCLASS_FloppyDisk
                            OrOf GUID_SETUP_SYSCLASS_TapeDrive
                            !OrOf GUID_SETUP_SYSCLASS_Volume
                            !OrOf GUID_SETUP_SYSCLASS_VolumeSnapshot
                                Clear(QActiveDisks)
                                QActiveDiskSeed         = QActiveDiskSeed + 1
                                QActiveDisks.Id         = QActiveDiskSeed
                                QActDsk:Guid            = ''
                                QActDsk:IsVM            = 0
                                If instring('\device\space',lower(QDeviceProperties.ValueDisplayA),1,1) > 0
                                    QActDsk:IsSpace = 1
                                ELSE
                                    QActDsk:IsSpace = 0
                                End
                                QActDsk:IsRaidMember    = 0
                                QActDsk:IsDynamicMember = 0
                                QActDsk:IsMirror        = 0
                                QActDsk:IsStandalone    = 0
                                QActDsk:Exclude         = 0
                                QActDsk:DeviceString    = QDeviceProperties.ValueDisplayA
                                QActDsk:QDeviceId       = QDevice.Id
                                
                                QNavigatorComplex.MachineId   = QActDsk:MachineId
                                QNavigatorComplex.DeviceId    = QDevice.Id
                                Get(QNavigatorComplex,QNavigatorComplex.MachineId,QNavigatorComplex.DeviceId)
                                If Errorcode() = 0
                                    QActiveDisks.QNavComplexId = QNavigatorComplex.Id
                                End
                                Get(QActiveDisks,QActDsk:DeviceString)
                                If Errorcode() <> 0
                                    Add(QActiveDisks,QActDsk:DeviceString)
                                End
                            End
                            Case QDevice.ClassGuid !GUID_OUTPUT_STR36 !Clip(QDevice.ClassDisplayNameA)
                            Of GUID_SETUP_SYSCLASS_Volume
                            OrOf GUID_SETUP_SYSCLASS_VolumeSnapshot
                                QActiveVolumeseed         = QActiveVolumeseed + 1
                                QActiveVolumes.Id         = QActiveVolumeseed
                                QActVol:Guid            = ''
                                QActVol:IsVM            = 0
                                QActVol:IsSpace = 0
                                QActVol:IsRaidMember    = 0
                                QActVol:IsDynamicMember = 0
                                QActVol:IsMirror        = 0
                                QActVol:IsStandalone    = 0
                                QActVol:Exclude         = 0
                                QActVol:DeviceString    = QDeviceProperties.ValueDisplayA
                                Get(QActiveVolumes,QActVol:DeviceString)
                                If Errorcode() <> 0
                                    Add(QActiveVolumes,QActVol:DeviceString)
                                End
                            End                            
                        Of SPDRP_CAPABILITIES                !EQUATE(00000000Fh)  !// Capabilities (R)

!CM_DEVCAP_LOCKSUPPORTED     EQUATE(00000001h)
!CM_DEVCAP_EJECTSUPPORTED    EQUATE(00000002h)
!CM_DEVCAP_REMOVABLE         EQUATE(00000004h)
!CM_DEVCAP_DOCKDEVICE        EQUATE(00000008h)
!CM_DEVCAP_UNIQUEID          EQUATE(00000010h)
!CM_DEVCAP_SILENTINSTALL     EQUATE(00000020h)
!CM_DEVCAP_RAWDEVICEOK       EQUATE(00000040h)
!CM_DEVCAP_SURPRISEREMOVALOK EQUATE(00000080h)
!CM_DEVCAP_HARDWAREDISABLED  EQUATE(00000100h)
!CM_DEVCAP_NONDYNAMIC        EQUATE(00000200h)    
    
                            Case QDevice.ClassGuid !GUID_OUTPUT_STR36 !Clip(QDevice.ClassDisplayNameA)
                            Of GUID_SETUP_SYSCLASS_CDROM
                            OrOf GUID_SETUP_SYSCLASS_DiskDrive
                            OrOf GUID_SETUP_SYSCLASS_FloppyDisk
                            OrOf GUID_SETUP_SYSCLASS_TapeDrive
                            OrOf GUID_SETUP_SYSCLASS_Volume
                            OrOf GUID_SETUP_SYSCLASS_VolumeSnapshot
                                
                            !OrOf GUID_SETUP_SYSCLASS_Volume
                                !https://docs.microsoft.com/en-us/windows-hardware/drivers/install/device-identifier-formats
                                !https://docs.microsoft.com/en-us/windows/win32/api/setupapi/nf-setupapi-setupdigetdeviceregistrypropertyw
                                !https://docs.microsoft.com/en-us/windows-hardware/drivers/install/device-identification-strings
                                
                                IntValue = QDeviceProperties.ValueA
                                !IntValue = 1
                                If BAND(CM_DEVCAP_LOCKSUPPORTED,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'LOCK SUPPORTED'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End
                                If BAND(CM_DEVCAP_EJECTSUPPORTED,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'EJECT SUPPORTED'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                            
                                If BAND(CM_DEVCAP_REMOVABLE,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'REMOVABLE'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                               
                                If BAND(CM_DEVCAP_DOCKDEVICE,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'DOCK DEVICE'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                                  
                                If BAND(CM_DEVCAP_UNIQUEID,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'UNIQUE ID'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                               
                                If BAND(CM_DEVCAP_SILENTINSTALL,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'SILENT INSTALL'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                              
                                If BAND(CM_DEVCAP_RAWDEVICEOK,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'RAW DEVICE OK'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                                 
                                If BAND(CM_DEVCAP_SURPRISEREMOVALOK,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'SURPRISE REMOVAL OK'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                                  
                                If BAND(CM_DEVCAP_HARDWAREDISABLED,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'HARDWARE DISABLED'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                                  
                                If BAND(CM_DEVCAP_NONDYNAMIC,IntValue) <> 0
                                    Clear(QDevPropLines)
                                    QDevPropLinesSeed                   = QDevPropLinesSeed + 1
                                    QDevPropLines.Id                    = QDevPropLinesSeed
                                    QDevPropLines.QDevicePropertiesId   = QDeviceProperties.Id
                                    QDevPropLinesOrdinal                = QDevPropLinesOrdinal + 1
                                    QDevPropLines.Ordinal               = QDevPropLinesOrdinal                                
                                    QDevPropLines.KeyA                  = 'NON DYNAMIC'
                                    QDevPropLines.ValueA                = 1
                                    QDevPropLines.ValueDisplayA         = 1
                                    QDevPropLines.DataTypeCString       = 'bool'
                                    Add(QDevPropLines)
                                End                             
                            End                            
                            
                        Of SPDRP_UI_NUMBER                   !EQUATE(000000010h)  !// UiNumber (R)
                        Of SPDRP_UPPERFILTERS                !EQUATE(000000011h)  !// UpperFilters (R/W)
                        Of SPDRP_LOWERFILTERS                !EQUATE(000000012h)  !// LowerFilters (R/W)
                        Of SPDRP_BUSTYPEGUID                 !EQUATE(000000013h)  !// BusTypeGUID (R)
                        Of SPDRP_LEGACYBUSTYPE               !EQUATE(000000014h)  !// LegacyBusType (R)
                        Of SPDRP_BUSNUMBER                   !EQUATE(000000015h)  !// BusNumber (R)
                        Of SPDRP_ENUMERATOR_NAME             !EQUATE(000000016h)  !// Enumerator Name (R)
                        Of SPDRP_SECURITY                    !EQUATE(000000017h)  !// Security (R/W, binary form)
                        Of SPDRP_SECURITY_SDS                !EQUATE(000000018h)  !// Security (W, SDS form)
                        Of SPDRP_DEVTYPE                     !EQUATE(000000019h)  !// Device Type (R/W)
                        Of SPDRP_EXCLUSIVE                   !EQUATE(00000001Ah)  !// Device is exclusive-access (R/W)
                        Of SPDRP_CHARACTERISTICS             !EQUATE(00000001Bh)  !// Device Characteristics (R/W)
                        Of SPDRP_ADDRESS                     !EQUATE(00000001Ch)  !// Device Address (R)
                            Case QDeviceProperties.ClassGuid36
                            Of GUID_SETUP_SYSCLASS_CDROM
                            OrOf GUID_SETUP_SYSCLASS_DiskDrive
                            OrOf GUID_SETUP_SYSCLASS_FloppyDisk
                            OrOf GUID_SETUP_SYSCLASS_TapeDrive
                            OrOf GUID_SETUP_SYSCLASS_Volume                            
                                IntValue = QDeviceProperties.ValueA
                                If IntValue = 0
                                    DeviceNotAttached = 1
                                End
                            End
                        Of SPDRP_UI_NUMBER_DESC_FORMAT       !EQUATE(00000001Dh)  !// UiNumberDescFormat (R/W)
                        Of SPDRP_DEVICE_POWER_DATA           !EQUATE(00000001Eh)  !// Device Power Data (R)
                        Of SPDRP_REMOVAL_POLICY              !EQUATE(00000001Fh)  !// Removal Policy (R)
                        Of SPDRP_REMOVAL_POLICY_HW_DEFAULT   !EQUATE(000000020h)  !// Hardware Removal Policy (R)
                        Of SPDRP_REMOVAL_POLICY_OVERRIDE     !EQUATE(000000021h)  !// Removal Policy Override (RW)
                        Of SPDRP_INSTALL_STATE               !EQUATE(000000022h)  !// Device Install State (R)
                        Of SPDRP_LOCATION_PATHS              !EQUATE(000000023h)  !// Device Location Paths (R)
                        Of SPDRP_BASE_CONTAINERID            !EQUATE(000000024h)  !// Base ContainerID (R)
                        Of SPDRP_MAXIMUM_PROPERTY            !EQUATE(000000025h)  !// Upper bound on ordinals                        
                        End
                        Add(QDeviceProperties)
                    End
                End
            End
            !If DeviceNotAttached = 0
                Add(QDevice)            
            !End
        End
    End
    
!CM_DEVCAP_LOCKSUPPORTED     EQUATE(00000001h)
!CM_DEVCAP_EJECTSUPPORTED    EQUATE(00000002h)
!CM_DEVCAP_REMOVABLE         EQUATE(00000004h)
!CM_DEVCAP_DOCKDEVICE        EQUATE(00000008h)
!CM_DEVCAP_UNIQUEID          EQUATE(00000010h)
!CM_DEVCAP_SILENTINSTALL     EQUATE(00000020h)
!CM_DEVCAP_RAWDEVICEOK       EQUATE(00000040h)
!CM_DEVCAP_SURPRISEREMOVALOK EQUATE(00000080h)
!CM_DEVCAP_HARDWAREDISABLED  EQUATE(00000100h)
!CM_DEVCAP_NONDYNAMIC        EQUATE(00000200h)    
    

  
    Sort(QDevice,QDev:DeviceInstance)
    G# = 0
    R# = Records(QDevice)
    Loop R# TIMES
        G# = G# + 1
        Get(QDevice,G#)
        If QDev:ParentInstance <> 0
            QDev:DeviceInstance = QDev:ParentInstance
            Get(QDevice,QDev:DeviceInstance)
            If Errorcode() = 0
                QDeviceId# = QDevice.Id
                Get(QDevice,G#)
                QDevice.ParentId = QDeviceId#
                Put(QDevice)
            End
        Else
            If QDevice.ParentId = 0
                QDevice.NameA = 'System Devices'
                ANSI_STRING_INPUT = Clip(QDevice.NameA)
                Do AnsiToUTF16
                QDevice.Name = UTF16_OUTPUT
                QDevice.NameLen = UTF16_OUTPUT_LEN    
                Put(QDevice)
            End
        End
    End    
    

    
!QActivePartitions  QUEUE,PRE(QActPart)
!Id                LONG
!Guid              STRING(36)
!IsVM              BYTE
!IsSpace           BYTE
!IsRaidMember      BYTE
!IsDynamicMember   BYTE
!IsMirror          BYTE
!IsStandalone      BYTE
!Exclude           BYTE
!DeviceString      STRING(256)
!QActDskId         LONG
!QActDskDeviceString     STRING(256)
!QActVolId         LONG
!QActVolDeviceString STRING(256)
!                END
    
    
    
    Do BuildFullTree
    Do RetrieveDiskDevices
    Do BuildDiskTree
1 Like

none organised bunch of EQUATES…

!REG_NONE                 EQUATE(0)
!REG_SZ                   EQUATE(1)
!REG_EXPAND_SZ            EQUATE(2)
!REG_BINARY               EQUATE(3)
!REG_DWORD                EQUATE(4)
!REG_DWORD_LITTLE_ENDIAN  EQUATE(4)
!REG_DWORD_BIG_ENDIAN     EQUATE(5)
!REG_LINK                 EQUATE(6)
!REG_MULTI_SZ             EQUATE(7)
INVALID_HANDLE_VALUE EQUATE(-1)
FILE_OPEN_EXISTING  EQUATE(3)
ERROR_SHARING_VIOLATION EQUATE(32)
!FILE_OPEN_EXISTING                                  LONG(3)
!FILE_DEVICE_CD_ROM_FILE_SYSTEM                      LONG
!FILE_DEVICE_CHANGER                                 LONG
!FILE_DEVICE_CONTROLLER                              LONG
!FILE_DEVICE_DATALINK                                LONG
!FILE_DEVICE_DFS                                     LONG
!FILE_DEVICE_DFS_FILE_SYSTEM                         LONG
!FILE_DEVICE_DFS_VOLUME                              LONG
!FILE_DEVICE_DISK                                    LONG
!FILE_DEVICE_DISK_FILE_SYSTEM                        LONG
!FILE_DEVICE_DVD                                     LONG
!FILE_DEVICE_FILE_SYSTEM                             LONG
!FILE_DEVICE_FIPS                                    LONG
!FILE_DEVICE_FULLSCREEN_VIDEO                        LONG
!FILE_DEVICE_INPORT_PORT                             LONG
!FILE_DEVICE_KEYBOARD                                LONG
!FILE_DEVICE_KS                                      LONG
!FILE_DEVICE_KSEC                                    LONG
!FILE_DEVICE_MAILSLOT                                LONG
!FILE_DEVICE_MASS_STORAGE                            LONG
!FILE_DEVICE_MIDI_IN                                 LONG
!FILE_DEVICE_MIDI_OUT                                LONG
!FILE_DEVICE_MODEM                                   LONG
!FILE_DEVICE_MOUSE                                   LONG
!FILE_DEVICE_MULTI_UNC_PROVIDER                      LONG
!FILE_DEVICE_NAMED_PIPE                              LONG
!FILE_DEVICE_NETWORK                                 LONG
!FILE_DEVICE_NETWORK_BROWSER                         LONG
!FILE_DEVICE_NETWORK_FILE_SYSTEM                     LONG
!FILE_DEVICE_NETWORK_REDIRECTOR                      LONG
!FILE_DEVICE_NULL                                    LONG
!FILE_DEVICE_PARALLEL_PORT                           LONG
!FILE_DEVICE_PHYSICAL_NETCARD                        LONG
!FILE_DEVICE_PRINTER                                 LONG
!FILE_DEVICE_SCANNER                                 LONG
!FILE_DEVICE_SCREEN                                  LONG
!FILE_DEVICE_SERENUM                                 LONG
!FILE_DEVICE_SERIAL_MOUSE_PORT                       LONG
!FILE_DEVICE_SERIAL_PORT                             LONG
!FILE_DEVICE_SMARTCARD                               LONG
!FILE_DEVICE_SMB                                     LONG
!FILE_DEVICE_SOUND                                   LONG
!FILE_DEVICE_STREAMS                                 LONG
!FILE_DEVICE_TAPE                                    LONG
!FILE_DEVICE_TAPE_FILE_SYSTEM                        LONG
!FILE_DEVICE_TERMSRV                                 LONG
!FILE_DEVICE_TRANSPORT                               LON

PARTITION_BASIC_DATA_GUID       EQUATE('ebd0a0a2-b9e5-4433-87c0-68b6b72699c7')
PARTITION_ENTRY_UNUSED_GUID     EQUATE('00000000-0000-0000-0000-000000000000')
PARTITION_SYSTEM_GUID           EQUATE('c12a7328-f81f-11d2-ba4b-00a0c93ec93b')
PARTITION_MSFT_RESERVED_GUID    EQUATE('e3c9e316-0b5c-4db8-817d-f92df00215ae')
PARTITION_LDM_METADATA_GUID     EQUATE('5808c8aa-7e8f-42e0-85d2-e1e90434cfb3')
PARTITION_LDM_DATA_GUID         EQUATE('af9b60a0-1431-4f62-bc68-3311714a69ad')
PARTITION_MSFT_RECOVERY_GUID    EQUATE('de94bba4-06d1-4d40-a16a-bfd50179d6ac')
PARTITION_STORAGE_SPACES        EQUATE('e75caf8f-f680-4cee-afa3-b001e56efc2d')

!UUID('00000000-0000-0000-0000-000000000000'): 'Unused entry',
!	UUID('024DEE41-33E7-11D3-9D69-0008C781F39F'): 'MBR partition scheme',
!	UUID('C12A7328-F81F-11D2-BA4B-00A0C93EC93B'): 'EFI System partition',
!	UUID('21686148-6449-6E6F-744E-656564454649'): 'BIOS Boot partition',
!	UUID('D3BFE2DE-3DAF-11DF-BA40-E3A556D89593'): 'Intel Fast Flash (iFFS) partition (for Intel Rapid Start technology)',
!	UUID('F4019732-066E-4E12-8273-346C5641494F'): 'Sony boot partition',
!	UUID('BFBFAFE7-A34F-448A-9A5B-6213EB736C22'): 'Lenovo boot partition',
!	UUID('E3C9E316-0B5C-4DB8-817D-F92DF00215AE'): 'Microsoft Reserved Partition (MSR)',
!	UUID('EBD0A0A2-B9E5-4433-87C0-68B6B72699C7'): 'Windows Basic data partition',
!	UUID('5808C8AA-7E8F-42E0-85D2-E1E90434CFB3'): 'Windows Logical Disk Manager (LDM) metadata',
!	UUID('AF9B60A0-1431-4F62-BC68-3311714A69AD'): 'Windows Logical Disk Manager data',
!	UUID('DE94BBA4-06D1-4D40-A16A-BFD50179D6AC'): 'Windows Recovery Environment',
!	UUID('37AFFC90-EF7D-4E96-91C3-2D7AE055B174'): 'Windows IBM General Parallel File System (GPFS)',
!	UUID('E75CAF8F-F680-4CEE-AFA3-B001E56EFC2D'): 'Windows Storage Spaces partition',
!	UUID('75894C1E-3AEB-11D3-B7C1-7B03A0000000'): 'HP-UX Data',
!	UUID('E2A1E728-32E3-11D6-A682-7B03A0000000'): 'HP-UX Service',
!	UUID('0FC63DAF-8483-4772-8E79-3D69D8477DE4'): 'Linux filesystem data',
!	UUID('A19D880F-05FC-4D3B-A006-743F0F84911E'): 'Linux RAID',
!	UUID('44479540-F297-41B2-9AF7-D131D5F0458A'): 'Linux Root (x86)',
!	UUID('4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709'): 'Linux Root (x86-64)',
!	UUID('69DAD710-2CE4-4E3C-B16C-21A1D49ABED3'): 'Linux Root (32-bit ARM)',
!	UUID('B921B045-1DF0-41C3-AF44-4C6F280D3FAE'): 'Linux Root (64-bit ARM/AArch64)',
!	UUID('993D8D3D-F80E-4225-855A-9DAF8ED7EA97'): 'Linux Root (IA-64)',
!	UUID('0657FD6D-A4AB-43C4-84E5-0933C84B4F4F'): 'Linux Swap',
!	UUID('E6D6D379-F507-44C2-A23C-238F2A3DF928'): 'Linux Logical Volume Manager (LVM)',
!	UUID('933AC7E1-2EB4-4F13-B844-0E14E2AEF915'): 'Linux /home',
!	UUID('3B8F8425-20E0-4F3B-907F-1A25A76F98E8'): 'Linux /srv (server data)',
!	UUID('7FFEC5C9-2D00-49B7-8941-3EA10A5586B7'): 'Linux Plain dm-crypt',
!	UUID('CA7D7CCB-63ED-4C53-861C-1742536059CC'): 'Linux LUKS',
!	UUID('8DA63339-0007-60C0-C436-083AC8230908'): 'Linux Reserved',
!	UUID('83BD6B9D-7F41-11DC-BE0B-001560B84F0F'): 'FreeBSD Boot',
!	UUID('516E7CB4-6ECF-11D6-8FF8-00022D09712B'): 'FreeBSD Data',
!	UUID('516E7CB5-6ECF-11D6-8FF8-00022D09712B'): 'FreeBSD Swap',
!	UUID('516E7CB6-6ECF-11D6-8FF8-00022D09712B'): 'FreeBSD Unix File System (UFS)',
!	UUID('516E7CB8-6ECF-11D6-8FF8-00022D09712B'): 'FreeBSD Vinum volume manager',
!	UUID('516E7CBA-6ECF-11D6-8FF8-00022D09712B'): 'FreeBSD ZFS',
!	UUID('48465300-0000-11AA-AA11-00306543ECAC'): 'Apple Hierarchical File System Plus (HFS+)',
!	UUID('55465300-0000-11AA-AA11-00306543ECAC'): 'Apple UFS',
!	UUID('52414944-0000-11AA-AA11-00306543ECAC'): 'Apple RAID',
!	UUID('52414944-5F4F-11AA-AA11-00306543ECAC'): 'Apple RAID (offline)',
!	UUID('426F6F74-0000-11AA-AA11-00306543ECAC'): 'Apple Boot (Recovery HD)',
!	UUID('4C616265-6C00-11AA-AA11-00306543ECAC'): 'Apple Label',
!	UUID('5265636F-7665-11AA-AA11-00306543ECAC'): 'Apple TV Recovery',
!	UUID('53746F72-6167-11AA-AA11-00306543ECAC'): 'Apple Core Storage (i.e. Lion FileVault)',
!	UUID('6A82CB45-1DD2-11B2-99A6-080020736631'): 'Solaris Boot',
!	UUID('6A85CF4D-1DD2-11B2-99A6-080020736631'): 'Solaris Root',
!	UUID('6A87C46F-1DD2-11B2-99A6-080020736631'): 'Solaris Swap',
!	UUID('6A8B642B-1DD2-11B2-99A6-080020736631'): 'Solaris Backup',
!	UUID('6A898CC3-1DD2-11B2-99A6-080020736631'): 'Solaris /usr // Apple ZFS',
!	UUID('6A8EF2E9-1DD2-11B2-99A6-080020736631'): 'Solaris /var',
!	UUID('6A90BA39-1DD2-11B2-99A6-080020736631'): 'Solaris /home',
!	UUID('6A9283A5-1DD2-11B2-99A6-080020736631'): 'Solaris Alternate sector',
!	UUID('6A945A3B-1DD2-11B2-99A6-080020736631'): 'Solaris Reserved',
!	UUID('6A9630D1-1DD2-11B2-99A6-080020736631'): 'Solaris Reserved',
!	UUID('6A980767-1DD2-11B2-99A6-080020736631'): 'Solaris Reserved',
!	UUID('6A96237F-1DD2-11B2-99A6-080020736631'): 'Solaris Reserved',
!	UUID('6A8D2AC7-1DD2-11B2-99A6-080020736631'): 'Solaris Reserved',
!	UUID('49F48D32-B10E-11DC-B99B-0019D1879648'): 'NetBSD Swap',
!	UUID('49F48D5A-B10E-11DC-B99B-0019D1879648'): 'NetBSD FFS',
!	UUID('49F48D82-B10E-11DC-B99B-0019D1879648'): 'NetBSD LFS',
!	UUID('49F48DAA-B10E-11DC-B99B-0019D1879648'): 'NetBSD RAID',
!	UUID('2DB519C4-B10F-11DC-B99B-0019D1879648'): 'NetBSD Concatenated partition', # libfdisk is wrong on this
!	UUID('2DB519EC-B10F-11DC-B99B-0019D1879648'): 'NetBSD Encrypted partition', # libfdisk is wrong on this
!	UUID('FE3A2A5D-4F32-41A7-B725-ACCC3285A309'): 'ChromeOS kernel',
!	UUID('3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC'): 'ChromeOS rootfs',
!	UUID('2E0A753D-9E48-43B0-8337-B15192CB1B5E'): 'ChromeOS future use',
!	UUID('42465331-3BA3-10F1-802A-4861696B7521'): 'Haiku BFS',
!	UUID('85D5E45E-237C-11E1-B4B3-E89A8F7FC3A7'): 'MidnightBSD Boot',
!	UUID('85D5E45A-237C-11E1-B4B3-E89A8F7FC3A7'): 'MidnightBSD Data',
!	UUID('85D5E45B-237C-11E1-B4B3-E89A8F7FC3A7'): 'MidnightBSD Swap',
!	UUID('0394EF8B-237E-11E1-B4B3-E89A8F7FC3A7'): 'MidnightBSD Unix File System (UFS)',
!	UUID('85D5E45C-237C-11E1-B4B3-E89A8F7FC3A7'): 'MidnightBSD Vinum volume manager',
!	UUID('85D5E45D-237C-11E1-B4B3-E89A8F7FC3A7'): 'MidnightBSD ZFS',
!	UUID('45B0969E-9B03-4F30-B4C6-B4B80CEFF106'): 'Ceph Journal',
!	UUID('45B0969E-9B03-4F30-B4C6-5EC00CEFF106'): 'Ceph dm-crypt Encrypted Journal',
!	UUID('4FBD7E29-9D25-41B8-AFD0-062C0CEFF05D'): 'Ceph OSD',
!	UUID('4FBD7E29-9D25-41B8-AFD0-5EC00CEFF05D'): 'Ceph dm-crypt OSD',
!	UUID('89C57F98-2FE5-4DC0-89C1-F3AD0CEFF2BE'): 'Ceph disk in creation',
!	UUID('89C57F98-2FE5-4DC0-89C1-5EC00CEFF2BE'): 'Ceph dm-crypt disk in creation',
!	UUID('824CC7A0-36A8-11E3-890A-952519AD3F61'): 'OpenBSD Data partition',
!	UUID('CEF5A9AD-73BC-4601-89F3-CDEEEEE321A1'): 'QNX Power-safe (QNX6) file system',
!	UUID('C91818F9-8025-47AF-89D2-F030D7000C2C'): 'Plan 9 partition',
!	UUID('9D275380-40AD-11DB-BF97-000C2911D1B8'): 'VMware ESX vmkcore (coredump)',
!	UUID('AA31E02A-400F-11DB-9590-000C2911D1B8'): 'VMware ESX VMFS filesystem',
!	UUID('9198EFFC-31C0-11DB-8F78-000C2911D1B8'): 'VMware ESX VMware Reserved',
!	UUID('2568845D-2332-4675-BC39-8FA5A4748D15'): 'Android-IA Bootloader',
!	UUID('114EAFFE-1552-4022-B26E-9B053604CF84'): 'Android-IA Bootloader2',
!	UUID('49A4D17F-93A3-45C1-A0DE-F50B2EBE2599'): 'Android-IA Boot',
!	UUID('4177C722-9E92-4AAB-8644-43502BFD5506'): 'Android-IA Recovery',
!	UUID('EF32A33B-A409-486C-9141-9FFB711F6266'): 'Android-IA Misc',
!	UUID('20AC26BE-20B7-11E3-84C5-6CFDB94711E9'): 'Android-IA Metadata',
!	UUID('38F428E6-D326-425D-9140-6E0EA133647C'): 'Android-IA System',
!	UUID('A893EF21-E428-470A-9E55-0668FD91A2D9'): 'Android-IA Cache',
!	UUID('DC76DDA9-5AC1-491C-AF42-A82591580C0D'): 'Android-IA Data',
!	UUID('EBC597D0-2053-4B15-8B64-E0AAC75F4DB1'): 'Android-IA Persistent',
!	UUID('C5A0AEEC-13EA-11E5-A1B1-001E67CA0C3C'): 'Android-IA Vendor',
!	UUID('BD59408B-4514-490D-BF12-9878D963F378'): 'Android-IA Config',
!	UUID('8F68CC74-C5E5-48DA-BE91-A0C8C15E9C80'): 'Android-IA Factory',
!	UUID('9FDAA6EF-4B3F-40D2-BA8D-BFF16BFB887B'): 'Android-IA Factory (alt)',
!	UUID('767941D0-2085-11E3-AD3B-6CFDB94711E9'): 'Android-IA Fastboot / Tertiary',
!	UUID('AC6D7924-EB71-4DF8-B48D-E267B27148FF'): 'Android-IA OEM',
!	# Wiki DE
!	UUID('7412F7D5-A156-4B13-81DC-867174929325'):'ONIE boot',
!	UUID('D4E6E2CD-4469-46F3-B5CB-1BFF57AFC149'):'ONIE config',
!	UUID('9E1A2D38-C612-4316-AA26-8B49521E5A8B'):'PowerPC PReP boot',
!	UUID('BC13C2FF-59E6-4262-A352-B275FD6F7172'):'Freedesktop Extended Boot Partition',
!7C3457EF-0000-11AA-AA11-00306543ECAC for APFS

!Would be nice if the list included the code too, e.g. "EF00" for EFI, "FD00" for Linux RAID and "8200" for Linux Swap :-P
!Can't find it anywhere.
!
[email protected]
!Owner
!Author
!Alex131089 commented on Apr 27, 2018 • 
!That's because they're not GPT types ;)
!They are shortcuts derived from the "old" MBR partition type:
!
!EF00 (from 0xEF) is for C12A7328-F81F-11D2-BA4B-00A0C93EC93B
!FD00 (from 0xFD) is for A19D880F-05FC-4D3B-A006-743F0F84911
!8200 (from 0x82) is for 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F




!   AddType(0x0000, "00000000-0000-0000-0000-000000000000", "Unused entry", 0);
!
!   // DOS/Windows partition types, most of which are hidden from the "L" listing
!   // (they're available mainly for MBR-to-GPT conversions).
!   AddType(0x0100, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-12
!   AddType(0x0400, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-16 < 32M
!   AddType(0x0600, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-16
!   AddType(0x0700, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 1); // NTFS (or HPFS)
!   AddType(0x0b00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-32
!   AddType(0x0c00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-32 LBA
!   AddType(0x0c01, "E3C9E316-0B5C-4DB8-817D-F92DF00215AE", "Microsoft reserved");
!   AddType(0x0e00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-16 LBA
!   AddType(0x1100, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden FAT-12
!   AddType(0x1400, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden FAT-16 < 32M
!   AddType(0x1600, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden FAT-16
!   AddType(0x1700, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden NTFS (or HPFS)
!   AddType(0x1b00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden FAT-32
!   AddType(0x1c00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden FAT-32 LBA
!   AddType(0x1e00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // Hidden FAT-16 LBA
!   AddType(0x2700, "DE94BBA4-06D1-4D40-A16A-BFD50179D6AC", "Windows RE");
!
!   // Open Network Install Environment (ONIE) specific types.
!   // See http://www.onie.org/ and
!   // https://github.com/onie/onie/blob/master/rootconf/x86_64/sysroot-lib-onie/onie-blkdev-common
!   AddType(0x3000, "7412F7D5-A156-4B13-81DC-867174929325", "ONIE boot");
!   AddType(0x3001, "D4E6E2CD-4469-46F3-B5CB-1BFF57AFC149", "ONIE config");
!
!   // Plan 9; see http://man.cat-v.org/9front/8/prep
!   AddType(0x3900, "C91818F9-8025-47AF-89D2-F030D7000C2C", "Plan 9");
!
!   // PowerPC reference platform boot partition
!   AddType(0x4100, "9E1A2D38-C612-4316-AA26-8B49521E5A8B", "PowerPC PReP boot");
!
!   // Windows LDM ("dynamic disk") types
!   AddType(0x4200, "AF9B60A0-1431-4F62-BC68-3311714A69AD", "Windows LDM data"); // Logical disk manager
!   AddType(0x4201, "5808C8AA-7E8F-42E0-85D2-E1E90434CFB3", "Windows LDM metadata"); // Logical disk manager
!   AddType(0x4202, "E75CAF8F-F680-4CEE-AFA3-B001E56EFC2D", "Windows Storage Spaces"); // A newer LDM-type setup
!
!   // An oddball IBM filesystem....
!   AddType(0x7501, "37AFFC90-EF7D-4E96-91C3-2D7AE055B174", "IBM GPFS"); // General Parallel File System (GPFS)
!
!   // ChromeOS-specific partition types...
!   // Values taken from vboot_reference/firmware/lib/cgptlib/include/gpt.h in
!   // ChromeOS source code, retrieved 12/23/2010. They're also at
!   // http://www.chromium.org/chromium-os/chromiumos-design-docs/disk-format.
!   // These have no MBR equivalents, AFAIK, so I'm using 0x7Fxx values, since they're close
!   // to the Linux values.
!   AddType(0x7f00, "FE3A2A5D-4F32-41A7-B725-ACCC3285A309", "ChromeOS kernel");
!   AddType(0x7f01, "3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC", "ChromeOS root");
!   AddType(0x7f02, "2E0A753D-9E48-43B0-8337-B15192CB1B5E", "ChromeOS reserved");
!
!   // Linux-specific partition types....
!   AddType(0x8200, "0657FD6D-A4AB-43C4-84E5-0933C84B4F4F", "Linux swap"); // Linux swap (or Solaris on MBR)
!   AddType(0x8300, "0FC63DAF-8483-4772-8E79-3D69D8477DE4", "Linux filesystem"); // Linux native
!   AddType(0x8301, "8DA63339-0007-60C0-C436-083AC8230908", "Linux reserved");
!   // See http://www.freedesktop.org/software/systemd/man/systemd-gpt-auto-generator.html
!   // and http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/
!   AddType(0x8302, "933AC7E1-2EB4-4F13-B844-0E14E2AEF915", "Linux /home"); // Linux /home (auto-mounted by systemd)
!   AddType(0x8303, "44479540-F297-41B2-9AF7-D131D5F0458A", "Linux x86 root (/)"); // Linux / on x86 (auto-mounted by systemd)
!   AddType(0x8304, "4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709", "Linux x86-64 root (/)"); // Linux / on x86-64 (auto-mounted by systemd)
!   AddType(0x8305, "B921B045-1DF0-41C3-AF44-4C6F280D3FAE", "Linux ARM64 root (/)"); // Linux / on 64-bit ARM (auto-mounted by systemd)
!   AddType(0x8306, "3B8F8425-20E0-4F3B-907F-1A25A76F98E8", "Linux /srv"); // Linux /srv (auto-mounted by systemd)
!   AddType(0x8307, "69DAD710-2CE4-4E3C-B16C-21A1D49ABED3", "Linux ARM32 root (/)"); // Linux / on 32-bit ARM (auto-mounted by systemd)
!
!   // Used by Intel Rapid Start technology
!   AddType(0x8400, "D3BFE2DE-3DAF-11DF-BA40-E3A556D89593", "Intel Rapid Start");
!
!   // Another Linux type code....
!   AddType(0x8e00, "E6D6D379-F507-44C2-A23C-238F2A3DF928", "Linux LVM");
!
!   // FreeBSD partition types....
!   // Note: Rather than extract FreeBSD disklabel data, convert FreeBSD
!   // partitions in-place, and let FreeBSD sort out the details....
!   AddType(0xa500, "516E7CB4-6ECF-11D6-8FF8-00022D09712B", "FreeBSD disklabel");
!   AddType(0xa501, "83BD6B9D-7F41-11DC-BE0B-001560B84F0F", "FreeBSD boot");
!   AddType(0xa502, "516E7CB5-6ECF-11D6-8FF8-00022D09712B", "FreeBSD swap");
!   AddType(0xa503, "516E7CB6-6ECF-11D6-8FF8-00022D09712B", "FreeBSD UFS");
!   AddType(0xa504, "516E7CBA-6ECF-11D6-8FF8-00022D09712B", "FreeBSD ZFS");
!   AddType(0xa505, "516E7CB8-6ECF-11D6-8FF8-00022D09712B", "FreeBSD Vinum/RAID");
!
!   // Midnight BSD partition types....
!   AddType(0xa580, "85D5E45A-237C-11E1-B4B3-E89A8F7FC3A7", "Midnight BSD data");
!   AddType(0xa581, "85D5E45E-237C-11E1-B4B3-E89A8F7FC3A7", "Midnight BSD boot");
!   AddType(0xa582, "85D5E45B-237C-11E1-B4B3-E89A8F7FC3A7", "Midnight BSD swap");
!   AddType(0xa583, "0394Ef8B-237E-11E1-B4B3-E89A8F7FC3A7", "Midnight BSD UFS");
!   AddType(0xa584, "85D5E45D-237C-11E1-B4B3-E89A8F7FC3A7", "Midnight BSD ZFS");
!   AddType(0xa585, "85D5E45C-237C-11E1-B4B3-E89A8F7FC3A7", "Midnight BSD Vinum");
!
!   // OpenBSD partition type....
!   AddType(0xa600, "824CC7A0-36A8-11E3-890A-952519AD3F61", "OpenBSD disklabel");
!
!   // A MacOS partition type, separated from others by NetBSD partition types...
!   AddType(0xa800, "55465300-0000-11AA-AA11-00306543ECAC", "Apple UFS"); // Mac OS X
!
!   // NetBSD partition types. Note that the main entry sets it up as a
!   // FreeBSD disklabel. I'm not 100% certain this is the correct behavior.
!   AddType(0xa900, "516E7CB4-6ECF-11D6-8FF8-00022D09712B", "FreeBSD disklabel", 0); // NetBSD disklabel
!   AddType(0xa901, "49F48D32-B10E-11DC-B99B-0019D1879648", "NetBSD swap");
!   AddType(0xa902, "49F48D5A-B10E-11DC-B99B-0019D1879648", "NetBSD FFS");
!   AddType(0xa903, "49F48D82-B10E-11DC-B99B-0019D1879648", "NetBSD LFS");
!   AddType(0xa904, "2DB519C4-B10F-11DC-B99B-0019D1879648", "NetBSD concatenated");
!   AddType(0xa905, "2DB519EC-B10F-11DC-B99B-0019D1879648", "NetBSD encrypted");
!   AddType(0xa906, "49F48DAA-B10E-11DC-B99B-0019D1879648", "NetBSD RAID");
!
!   // Mac OS partition types (See also 0xa800, above)....
!   AddType(0xab00, "426F6F74-0000-11AA-AA11-00306543ECAC", "Recovery HD");
!   AddType(0xaf00, "48465300-0000-11AA-AA11-00306543ECAC", "Apple HFS/HFS+");
!   AddType(0xaf01, "52414944-0000-11AA-AA11-00306543ECAC", "Apple RAID");
!   AddType(0xaf02, "52414944-5F4F-11AA-AA11-00306543ECAC", "Apple RAID offline");
!   AddType(0xaf03, "4C616265-6C00-11AA-AA11-00306543ECAC", "Apple label");
!   AddType(0xaf04, "5265636F-7665-11AA-AA11-00306543ECAC", "AppleTV recovery");
!   AddType(0xaf05, "53746F72-6167-11AA-AA11-00306543ECAC", "Apple Core Storage");
!
!   // Acronis Secure Zone
!   AddType(0xbc00, "0311FC50-01CA-4725-AD77-9ADBB20ACE98", "Acronis Secure Zone");
!
!   // Solaris partition types (one of which is shared with MacOS)
!   AddType(0xbe00, "6A82CB45-1DD2-11B2-99A6-080020736631", "Solaris boot");
!   AddType(0xbf00, "6A85CF4D-1DD2-11B2-99A6-080020736631", "Solaris root");
!   AddType(0xbf01, "6A898CC3-1DD2-11B2-99A6-080020736631", "Solaris /usr & Mac ZFS"); // Solaris/MacOS
!   AddType(0xbf02, "6A87C46F-1DD2-11B2-99A6-080020736631", "Solaris swap");
!   AddType(0xbf03, "6A8B642B-1DD2-11B2-99A6-080020736631", "Solaris backup");
!   AddType(0xbf04, "6A8EF2E9-1DD2-11B2-99A6-080020736631", "Solaris /var");
!   AddType(0xbf05, "6A90BA39-1DD2-11B2-99A6-080020736631", "Solaris /home");
!   AddType(0xbf06, "6A9283A5-1DD2-11B2-99A6-080020736631", "Solaris alternate sector");
!   AddType(0xbf07, "6A945A3B-1DD2-11B2-99A6-080020736631", "Solaris Reserved 1");
!   AddType(0xbf08, "6A9630D1-1DD2-11B2-99A6-080020736631", "Solaris Reserved 2");
!   AddType(0xbf09, "6A980767-1DD2-11B2-99A6-080020736631", "Solaris Reserved 3");
!   AddType(0xbf0a, "6A96237F-1DD2-11B2-99A6-080020736631", "Solaris Reserved 4");
!   AddType(0xbf0b, "6A8D2AC7-1DD2-11B2-99A6-080020736631", "Solaris Reserved 5");
!
!   // I can find no MBR equivalents for these, but they're on the
!   // Wikipedia page for GPT, so here we go....
!   AddType(0xc001, "75894C1E-3AEB-11D3-B7C1-7B03A0000000", "HP-UX data");
!   AddType(0xc002, "E2A1E728-32E3-11D6-A682-7B03A0000000", "HP-UX service");
!
!   // See http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec
!   AddType(0xea00, "BC13C2FF-59E6-4262-A352-B275FD6F7172", "Freedesktop $BOOT");
!
!   // Type code for Haiku; uses BeOS MBR code as hex code base
!   AddType(0xeb00, "42465331-3BA3-10F1-802A-4861696B7521", "Haiku BFS");
!
!   // Manufacturer-specific ESP-like partitions (in order in which they were added)
!   AddType(0xed00, "F4019732-066E-4E12-8273-346C5641494F", "Sony system partition");
!   AddType(0xed01, "BFBFAFE7-A34F-448A-9A5B-6213EB736C22", "Lenovo system partition");
!
!   // EFI system and related partitions
!   AddType(0xef00, "C12A7328-F81F-11D2-BA4B-00A0C93EC93B", "EFI System"); // Parted identifies these as having the "boot flag" set
!   AddType(0xef01, "024DEE41-33E7-11D3-9D69-0008C781F39F", "MBR partition scheme"); // Used to nest MBR in GPT
!   AddType(0xef02, "21686148-6449-6E6F-744E-656564454649", "BIOS boot partition"); // Used by GRUB
!
!   // Ceph type codes; see https://github.com/ceph/ceph/blob/9bcc42a3e6b08521694b5c0228b2c6ed7b3d312e/src/ceph-disk#L76-L81
!   AddType(0xf800, "4FBD7E29-9D25-41B8-AFD0-062C0CEFF05D", "Ceph OSD"); // Ceph Object Storage Daemon
!   AddType(0xf801, "4FBD7E29-9D25-41B8-AFD0-5EC00CEFF05D", "Ceph dm-crypt OSD"); // Ceph Object Storage Daemon (encrypted)
!   AddType(0xf802, "45B0969E-9B03-4F30-B4C6-B4B80CEFF106", "Ceph journal");
!   AddType(0xf803, "45B0969E-9B03-4F30-B4C6-5EC00CEFF106", "Ceph dm-crypt journal");
!   AddType(0xf804, "89C57F98-2FE5-4DC0-89C1-F3AD0CEFF2BE", "Ceph disk in creation");
!   AddType(0xf805, "89C57F98-2FE5-4DC0-89C1-5EC00CEFF2BE", "Ceph dm-crypt disk in creation");
!
!   // VMWare ESX partition types codes
!   AddType(0xfb00, "AA31E02A-400F-11DB-9590-000C2911D1B8", "VMWare VMFS");
!   AddType(0xfb01, "9198EFFC-31C0-11DB-8F78-000C2911D1B8", "VMWare reserved");
!   AddType(0xfc00, "9D275380-40AD-11DB-BF97-000C2911D1B8", "VMWare kcore crash protection");
!
!   // A straggler Linux partition type....
!   AddType(0xfd00, "A19D880F-05FC-4D3B-A006-743F0F84911E", "Linux RAID");

GUID_DEVINTERFACE_DISK37    EQUATE('53F56307-B6BF-11D0-94F2-00A0C91EFB8B')
!GUID_DEVINTERFACE_DISK EQUATE('53F56307-B6BF-11D0-94F2-00A0C91EFB8B')

!DIGCF_PRESENT equate(2)
CM_DEVCAP_LOCKSUPPORTED     EQUATE(00000001h)
CM_DEVCAP_EJECTSUPPORTED    EQUATE(00000002h)
CM_DEVCAP_REMOVABLE         EQUATE(00000004h)
CM_DEVCAP_DOCKDEVICE        EQUATE(00000008h)
CM_DEVCAP_UNIQUEID          EQUATE(00000010h)
CM_DEVCAP_SILENTINSTALL     EQUATE(00000020h)
CM_DEVCAP_RAWDEVICEOK       EQUATE(00000040h)
CM_DEVCAP_SURPRISEREMOVALOK EQUATE(00000080h)
CM_DEVCAP_HARDWAREDISABLED  EQUATE(00000100h)
CM_DEVCAP_NONDYNAMIC        EQUATE(00000200h)

VIRTUAL_STORAGE_TYPE_VENDOR_MICROSOFT EQUATE('EC984AEC-A0F9-47e9-901F-71415A66345B')

GUID_SETUP_SYSCLASS_WCEUSBS EQUATE('25DBCE51-6C8F-4A72-8A6D-B54C2B4FC835') ! Windows CE USB ActiveSync Devices
GUID_SETUP_SYSCLASS_SecurityAccelerator  EQUATE('268C95A1-EDFE-11D3-95C3-0010DC4050A5') ! PCI SSL Accelerator
GUID_SETUP_SYSCLASS_USB  EQUATE('36FC9E60-C465-11CF-8056-444553540000') ! USB Bus Devices (hubs and host controllers)
GUID_SETUP_SYSCLASS_PNPPrinters  EQUATE('4658EE7E-F050-11D1-B6BD-00C04FA372A7') ! Printers, Bus-specific class drivers
GUID_SETUP_SYSCLASS_Dot4  EQUATE('48721B56-6795-11D2-B1A8-0080C72E74A2') ! IEEE 1284-4 Devices
GUID_SETUP_SYSCLASS_Dot4Print  EQUATE('49CE6AC8-6F86-11D2-B1E5-0080C72E74A2') ! IEEE 1284-4 Print Functions
GUID_SETUP_SYSCLASS_Adapter  EQUATE('4D36E964-E325-11CE-BFC1-08002BE10318') ! Adapter
GUID_SETUP_SYSCLASS_CDROM  EQUATE('4D36E965-E325-11CE-BFC1-08002BE10318') ! CD-ROM Drives
GUID_SETUP_SYSCLASS_Computer  EQUATE('4D36E966-E325-11CE-BFC1-08002BE10318') ! Computer
GUID_SETUP_SYSCLASS_DiskDrive  EQUATE('4D36E967-E325-11CE-BFC1-08002BE10318') ! Disk Drives
GUID_SETUP_SYSCLASS_Display  EQUATE('4D36E968-E325-11CE-BFC1-08002BE10318') ! Display Adapters
GUID_SETUP_SYSCLASS_FDC  EQUATE('4D36E969-E325-11CE-BFC1-08002BE10318') ! Floppy Disk Controllers
GUID_SETUP_SYSCLASS_HDC  EQUATE('4D36E96A-E325-11CE-BFC1-08002BE10318') ! Hard Disk Controllers
GUID_SETUP_SYSCLASS_Keyboard  EQUATE('4D36E96B-E325-11CE-BFC1-08002BE10318') ! Keyboard
GUID_SETUP_SYSCLASS_Media  EQUATE('4D36E96C-E325-11CE-BFC1-08002BE10318') ! Multimedia
GUID_SETUP_SYSCLASS_Modem  EQUATE('4D36E96D-E325-11CE-BFC1-08002BE10318') ! Modem
GUID_SETUP_SYSCLASS_Monitor  EQUATE('4D36E96E-E325-11CE-BFC1-08002BE10318') ! Monitor
GUID_SETUP_SYSCLASS_Mouse  EQUATE('4D36E96F-E325-11CE-BFC1-08002BE10318') ! Mouse
GUID_SETUP_SYSCLASS_MTD  EQUATE('4D36E970-E325-11CE-BFC1-08002BE10318') ! Memory Technology Driver
GUID_SETUP_SYSCLASS_Multifunction  EQUATE('4D36E971-E325-11CE-BFC1-08002BE10318') ! Multifunction Devices
GUID_SETUP_SYSCLASS_Net  EQUATE('4D36E972-E325-11CE-BFC1-08002BE10318') ! Network Adapter
GUID_SETUP_SYSCLASS_NetClient  EQUATE('4D36E973-E325-11CE-BFC1-08002BE10318') ! Network Client
GUID_SETUP_SYSCLASS_NetService  EQUATE('4D36E974-E325-11CE-BFC1-08002BE10318') ! Network Service
GUID_SETUP_SYSCLASS_NetTrans  EQUATE('4D36E975-E325-11CE-BFC1-08002BE10318') ! Network Transport
GUID_SETUP_SYSCLASS_NoDriver  EQUATE('4D36E976-E325-11CE-BFC1-08002BE10318') ! No driver
GUID_SETUP_SYSCLASS_PCMCIA  EQUATE('4D36E977-E325-11CE-BFC1-08002BE10318') ! PCMCIA Adapters
GUID_SETUP_SYSCLASS_Ports  EQUATE('4D36E978-E325-11CE-BFC1-08002BE10318') ! Ports (COM & LPT ports)
GUID_SETUP_SYSCLASS_Printer  EQUATE('4D36E979-E325-11CE-BFC1-08002BE10318') ! Printers
GUID_SETUP_SYSCLASS_PrinterUpgrade  EQUATE('4D36E97A-E325-11CE-BFC1-08002BE10318') ! Printer Upgrade
GUID_SETUP_SYSCLASS_SCSIAdapter  EQUATE('4D36E97B-E325-11CE-BFC1-08002BE10318') ! SCSI and RAID Controllers
GUID_SETUP_SYSCLASS_Sound  EQUATE('4D36E97C-E325-11CE-BFC1-08002BE10318') ! Sound
GUID_SETUP_SYSCLASS_System  EQUATE('4D36E97D-E325-11CE-BFC1-08002BE10318') ! System Devices
GUID_SETUP_SYSCLASS_Unknown  EQUATE('4D36E97E-E325-11CE-BFC1-08002BE10318') ! Other Devices
GUID_SETUP_SYSCLASS_FloppyDisk  EQUATE('4D36E980-E325-11CE-BFC1-08002BE10318') ! Floppy Disk Drives
GUID_SETUP_SYSCLASS_Processor  EQUATE('50127DC3-0F36-415E-A6CC-4CB3BE910B65') ! Processors
GUID_SETUP_SYSCLASS_MultiportSerial  EQUATE('50906CB8-BA12-11D1-BF5D-0000F805F530') ! Multiport Serial Adapters
GUID_SETUP_SYSCLASS_SmartCardReader  EQUATE('50DD5230-BA8A-11D1-BF5D-0000F805F530') ! Smart Card Readers
GUID_SETUP_SYSCLASS_Sensor  EQUATE('5175D334-C371-4806-B3BA-71FD53C9258D') ! Sensors
GUID_SETUP_SYSCLASS_VolumeSnapshot  EQUATE('533C5B84-EC70-11D2-9505-00C04F79DEAF') ! Storage Volume Snapshots
GUID_SETUP_SYSCLASS_Biometric  EQUATE('53D29EF7-377C-4D14-864B-EB3A85769359') ! Biometric Device
GUID_SETUP_SYSCLASS_1394Debug  EQUATE('66F250D6-7801-4A64-B139-EEA80A450B24') ! Host-side IEEE 1394 Kernel Debugger Support
GUID_SETUP_SYSCLASS_1394  EQUATE('6BDD1FC1-810F-11D0-BEC7-08002BE2092F') ! IEEE 1394 Host Bus Controller
GUID_SETUP_SYSCLASS_Decoder  EQUATE('6BDD1FC2-810F-11D0-BEC7-08002BE2092F') ! Decoder
GUID_SETUP_SYSCLASS_Infrared  EQUATE('6BDD1FC5-810F-11D0-BEC7-08002BE2092F') ! IrDA Devices
GUID_SETUP_SYSCLASS_Image  EQUATE('6BDD1FC6-810F-11D0-BEC7-08002BE2092F') ! Imaging Device
GUID_SETUP_SYSCLASS_TapeDrive  EQUATE('6D807884-7D21-11CF-801C-08002BE10318') ! Tape Drives
GUID_SETUP_SYSCLASS_Volume  EQUATE('71A27CDD-812A-11D0-BEC7-08002BE2092F') ! Storage Volumes
GUID_SETUP_SYSCLASS_Battery  EQUATE('72631E54-78A4-11D0-BCF7-00AA00B7B32A') ! Battery Devices
GUID_SETUP_SYSCLASS_HIDClass  EQUATE('745A17A0-74D3-11D0-B6FE-00A0C90F57DA') ! Human Interface Devices (HID)
GUID_SETUP_SYSCLASS_61883  EQUATE('7EBEFBC0-3200-11D2-B4C2-00A0C9697D07') ! IEEE 1394 Devices That Support the 61883 Protocol
GUID_SETUP_SYSCLASS_USBDevice  EQUATE('88BAE032-5A81-49F0-BC3D-A4FF138216D6') ! USB Device
GUID_SETUP_SYSCLASS_LegacyDriver  EQUATE('8ECC055D-047F-11D1-A537-0000F8753ED1') ! Non-Plug and Play Drivers
GUID_SETUP_SYSCLASS_SideShow  EQUATE('997B5D8D-C442-4F2E-BAF3-9C8E671E9E21') ! Windows SideShow
GUID_SETUP_SYSCLASS_AVC  EQUATE('C06FF265-AE09-48F0-812C-16753D7CBA83') ! IEEE 1394 Devices That Support the AVC Protocol
GUID_SETUP_SYSCLASS_Enum1394  EQUATE('C459DF55-DB08-11D1-B009-00A0C9081FF6') ! IEEE 1394 IP Network Enumerator
GUID_SETUP_SYSCLASS_MediumChanger  EQUATE('CE5939AE-EBDE-11D0-B181-0000F8753EC4') ! Media Changers
GUID_SETUP_SYSCLASS_APMSupport  EQUATE('D45B1C18-C8FA-11D1-9F77-0000F805F530') ! AMP
GUID_SETUP_SYSCLASS_SBP2  EQUATE('D48179BE-EC20-11D1-B6B8-00C04FA372A7') ! IEEE 1394 Devices That Support the SBP2 Protocol
GUID_SETUP_SYSCLASS_Bluetooth  EQUATE('E0CBF06C-CD8B-4647-BB8A-263B43F0F974') ! Bluetooth Devices
GUID_SETUP_SYSCLASS_WPD  EQUATE('EEC5AD98-8080-425F-922A-DABF3DE3F69A') ! Windows Portable Devices (WPD)

!cb3a4001-46f0-11d0-b08f-00609713053f 
!//
!// DEVICE EVENTS THAT CAN BE BROADCAST TO DRIVERS AND USER-MODE APPS.
!//
GUID_HWPROFILE_QUERY_CHANGE         EQUATE('CB3A4001-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_HWPROFILE_CHANGE_CANCELLED     EQUATE('CB3A4002-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_HWPROFILE_CHANGE_COMPLETE      EQUATE('CB3A4003-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_DEVICE_INTERFACE_ARRIVAL       EQUATE('CB3A4004-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_DEVICE_INTERFACE_REMOVAL       EQUATE('CB3A4005-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_TARGET_DEVICE_QUERY_REMOVE     EQUATE('CB3A4006-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_TARGET_DEVICE_REMOVE_CANCELLED EQUATE('CB3A4007-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_TARGET_DEVICE_REMOVE_COMPLETE  EQUATE('CB3A4008-46F0-11D0-B0-8F-00-60-97-13-05-3F')
GUID_PNP_CUSTOM_NOTIFICATION        EQUATE('ACA73F8E-8D23-11D1-AC-7D-00-00-F8-75-71-D0')
GUID_PNP_POWER_NOTIFICATION         EQUATE('C2CF0660-EB7A-11D1-BD-7F-00-00-F8-75-71-D0')
!
!
!//
!// INTERFACE GUIDS USED FOR IRP_MN_QUERY_INTERFACE
!//
GUID_BUS_INTERFACE_STANDARD         EQUATE('496B8280-6F25-11D0-BE-AF-08-00-2B-E2-09-2F')
GUID_PCI_BUS_INTERFACE_STANDARD     EQUATE('496B8281-6F25-11D0-BE-AF-08-00-2B-E2-09-2F')
GUID_AGP_TARGET_BUS_INTERFACE_STANDARD EQUATE('B15CFCE8-06D1-4D37-9D-4C-BE-DD-E0-C2-A6-FF')
GUID_ARBITER_INTERFACE_STANDARD     EQUATE('E644F185-8C0E-11D0-BE-CF-08-00-2B-E2-09-2F')
GUID_TRANSLATOR_INTERFACE_STANDARD  EQUATE('6C154A92-AACF-11D0-8D-2A-00-A0-C9-06-B2-44')
GUID_ACPI_INTERFACE_STANDARD        EQUATE('B091A08A-BA97-11D0-BD-14-00-AA-00-B7-B3-2A')
GUID_INT_ROUTE_INTERFACE_STANDARD   EQUATE('70941BF4-0073-11D1-A0-9E-00-C0-4F-C3-40-B1')
GUID_PCMCIA_BUS_INTERFACE_STANDARD  EQUATE('76173AF0-C504-11D1-94-7F-00-C0-4F-B9-60-EE')
GUID_ACPI_REGS_INTERFACE_STANDARD   EQUATE('06141966-7245-6369-46-2E-4E-65-6C-73-6F-6E')
GUID_LEGACY_DEVICE_DETECTION_STANDARD EQUATE('50FEB0DE-596A-11D2-A5-B8-00-00-F8-1A-46-19')
GUID_PCI_DEVICE_PRESENT_INTERFACE   EQUATE('D1B82C26-BF49-45EF-B2-16-71-CB-D7-88-9B-57')
GUID_MF_ENUMERATION_INTERFACE       EQUATE('AEB895F0-5586-11D1-8D-84-00-A0-C9-06-B2-44')
GUID_ACPI_CMOS_INTERFACE_STANDARD   EQUATE('3A8D0384-6505-40CA-BC-39-56-C1-5F-8C-5F-ED')
GUID_ACPI_PORT_RANGES_INTERFACE_STANDARD EQUATE('F14F609B-CBBD-4957-A6-74-BC-0-21-3F-1C-97')
GUID_PNP_LOCATION_INTERFACE         EQUATE('70211B0E -0AFB-47DB-AF-C1-41-0B-F8-42-49-7A')
!
!//
!// BUS TYPE GUIDS
!//
!
GUID_BUS_TYPE_INTERNAL              EQUATE('1530EA73-086B-11D1-A0-9F-00-C0-4F-C3-40-B1')
GUID_BUS_TYPE_PCMCIA                EQUATE('09343630-AF9F-11D0-92-E9-00-00-F8-1E-1B-30')
GUID_BUS_TYPE_PCI                   EQUATE('C8EBDFB0-B510-11D0-80-E5-00-A0-C9-25-42-E3')
GUID_BUS_TYPE_ISAPNP                EQUATE('E676F854-D87D-11D0-92-B2-00-A0-C9-05-5F-C5')
GUID_BUS_TYPE_EISA                  EQUATE('DDC35509-F3FC-11D0-A5-37-00-00-F8-75-3E-D1')
GUID_BUS_TYPE_MCA                   EQUATE('1C75997A-DC33-11D0-92-B2-00-A0-C9-05-5F-C5')
GUID_BUS_TYPE_LPTENUM               EQUATE('C4CA1000-2DDC-11D5-A1-7A-00-C0-4F-60-52-4D')
GUID_BUS_TYPE_USBPRINT              EQUATE('441EE000-4342-11D5-A1-84-00-C0-4F-60-52-4D')
GUID_BUS_TYPE_DOT4PRT               EQUATE('441EE001-4342-11D5-A1-84-00-C0-4F-60-52-4D')
GUID_BUS_TYPE_SERENUM               EQUATE('77114A87-8944-11D1-BD-90-00-A0-C9-06-BE-2D')
GUID_BUS_TYPE_USB                   EQUATE('9D7DEBBC-C85D-11D1-9E-B4-00-60-08-C3-A1-9A')
GUID_BUS_TYPE_1394                  EQUATE('F74E73EB-9AC5-45EB-BE-4D-77-2C-C7-1D-DF-B3')
GUID_BUS_TYPE_HID                   EQUATE('EEAF37D0-1963-47C4-AA-48-72-47-6D-B7-CF-49')
GUID_BUS_TYPE_AVC                   EQUATE('C06FF265-AE09-48F0-81-2C-16-75-3D-7C-BA-83')
GUID_BUS_TYPE_IRDA                  EQUATE('7AE17DC1-C944-44D6-88-1F-4C-2E-61-05-3B-C1')
GUID_BUS_TYPE_SD                    EQUATE('E700CC04-4036-4E89-95-79-89-EB-F4-5F-00-CD')

!
!//
!// POWER MANAGEMENT WMI GUIDS FOR DEVICE CONTROL
!//
!
GUID_POWER_DEVICE_ENABLE            EQUATE('827C0A6F-FEB0-11D0-BD-26-00-AA-00-B7-B3-2A')
GUID_POWER_DEVICE_TIMEOUTS          EQUATE('A45DA735-FEB0-11D0-BD-26-00-AA-00-B7-B3-2A')
GUID_POWER_DEVICE_WAKE_ENABLE       EQUATE('A9546A82-FEB0-11D0-BD-26-00-AA-00-B7-B3-2A')


GUIDUMBUSROOTBUSENUMERATOR  EQUATE('65A9A6CF-64CD-480B-843E-32C86E1BA19F')
GUID_NDIS_LAN_CLASS  EQUATE('AD498944-762F-11D0-8DCB-00C04FC3358C')
GUID_BUS1394_CLASS  EQUATE('6BDD1FC1-810F-11D0-BEC7-08002BE2092F')
GUID_61883_CLASS  EQUATE('7EBEFBC0-3200-11D2-B4C2-00A0C9697D07')
GUID_DEVICE_APPLICATIONLAUNCH_BUTTON  EQUATE('629758EE-986E-4D9E-8E47-DE27F8AB054D')
GUID_DEVICE_BATTERY  EQUATE('72631E54-78A4-11D0-BCF7-00AA00B7B32A')
GUID_DEVICE_LID  EQUATE('4AFA3D52-74A7-11D0-BE5E-00A0C9062857')
GUID_DEVICE_MEMORY  EQUATE('3FD0F03D-92E0-45FB-B75C-5ED8FFB01021')
GUID_DEVICE_MESSAGE_INDICATOR  EQUATE('CD48A365-FA94-4CE2-A232-A1B764E5D8B4')
GUID_DEVICE_PROCESSOR  EQUATE('97FADB10-4E33-40AE-359C-8BEF029DBDD0')
GUID_DEVICE_SYS_BUTTON  EQUATE('4AFA3D53-74A7-11D0-BE5E-00A0C9062857')
GUID_DEVICE_THERMAL_ZONE  EQUATE('4AFA3D51-74A7-11D0-BE5E-00A0C9062857')
GUID_BTHPORT_DEVICE_INTERFACE       EQUATE('0850302A-B344-4FDA-9BE9-90576B8D46F0')

GUID_DEVINTERFACE_BRIGHTNESS  EQUATE('FDE5BBA4-B3F9-46FB-BDAA-0728CE3100B4')
GUID_DEVINTERFACE_DISPLAY_ADAPTER  EQUATE('5B45201D-F2F2-4F3B-85BB-30FF1F953599')
GUID_DEVINTERFACE_I2C  EQUATE('2564AA4F-DDDB-4495-B497-6AD4A84163D7')
GUID_DEVINTERFACE_IMAGE  EQUATE('6BDD1FC6-810F-11D0-BEC7-08002BE2092F')
GUID_DEVINTERFACE_MONITOR  EQUATE('E6F07B5F-EE97-4A90-B076-33F57BF4EAA7')
GUID_DEVINTERFACE_OPM  EQUATE('BF4672DE-6B4E-4BE4-A325-68A91EA49C09')
GUID_DEVINTERFACE_VIDEO_OUTPUT_ARRIVAL  EQUATE('1AD9E4F0-F88D-4360-BAB9-4C2D55E564CD')
GUID_DISPLAY_DEVICE_ARRIVAL  EQUATE('1CA05180-A699-450A-9A0C-DE4FBE3DDD89')
GUID_DEVINTERFACE_HID  EQUATE('4D1E55B2-F16F-11CF-88CB-001111000030')
GUID_DEVINTERFACE_KEYBOARD  EQUATE('884B96C3-56EF-11D1-BC8C-00A0C91405DD')
GUID_DEVINTERFACE_MOUSE  EQUATE('378DE44C-56EF-11D1-BC8C-00A0C91405DD')
GUID_DEVINTERFACE_MODEM  EQUATE('2C7089AA-2E0E-11D1-B114-00C04FC2AAE4')
GUID_DEVINTERFACE_NET  EQUATE('CAC88484-7515-4C03-82E6-71A87ABAC361')
GUID_DEVINTERFACE_COMPORT  EQUATE('86E0D1E0-8089-11D0-9CE4-08003E301F73')
GUID_DEVINTERFACE_PARALLEL  EQUATE('97F76EF0-F883-11D0-AF1F-0000F800845C')
GUID_DEVINTERFACE_PARCLASS  EQUATE('811FC6A5-F728-11D0-A537-0000F8753ED1')
GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR  EQUATE('4D36E978-E325-11CE-BFC1-08002BE10318')
GUID_DEVINTERFACE_CDCHANGER  EQUATE('53F56312-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_CDROM  EQUATE('53F56308-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_SPACEPORTCONTROLLER  EQUATE('53F5630E-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_HIDDEN_VOLUME  EQUATE('7F108A28-9833-4B3B-B780-2C6B5FA5C062')
GUID_DEVINTERFACE_DISK  EQUATE('53F56307-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_STORAGEDISK  EQUATE('7FCCC86C-228A-40AD-8A58-F590AF7BFDCE')
GUID_DEVINTERFACE_FLOPPY  EQUATE('53F56311-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_MEDIUMCHANGER  EQUATE('53F56310-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_PARTITION  EQUATE('53F5630A-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_STORAGEPORT  EQUATE('2ACCFE60-C130-11D2-B082-00A0C91EFB8B')
GUID_DEVINTERFACE_TAPE  EQUATE('53F5630B-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_VOLUME  EQUATE('53F5630D-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_WRITEONCEDISK     EQUATE('53F5630C-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_DEVINTERFACE_VMLUN             EQUATE('6F416619-9F29-42A5-B20B-37E219CA02B0')
GUID_DEVINTERFACE_SES               EQUATE('1790C9EC-47D5-4DF3-B5AF-9ADF3CF23E48')
GUID_DEVINTERFACE_SERVICE_VOLUME    EQUATE('6EAD3D82-25EC-46BC-B7FD-C1F0DF8F5037')      


!#define  WDI_STORAGE_PREDICT_FAILURE_DPS_GUID        {0xe9f2d03aL, 0x747c, 0x41c2, {0xbb, 0x9a, 0x02, 0xc6, 0x2b, 0x6d, 0x5f, 0xcb}};
!
!//
!// Interfaces to discover devices that are
!// not reported  through conventional APIs
!//
!
!DEFINE_GUID(GUID_DEVINTERFACE_SERVICE_VOLUME,         0x6ead3d82L, 0x25ec, 0x46bc, 0xb7, 0xfd, 0xc1, 0xf0, 0xdf, 0x8f, 0x50, 0x37);
!DEFINE_GUID(GUID_DEVINTERFACE_HIDDEN_VOLUME,          0x7f108a28L, 0x9833, 0x4b3b, 0xb7, 0x80, 0x2c, 0x6b, 0x5f, 0xa5, 0xc0, 0x62);
!
!//
!// Interface to register for RPMB commands
!//
!
!DEFINE_GUID(GUID_DEVINTERFACE_UNIFIED_ACCESS_RPMB,    0x27447c21L, 0xbcc3, 0x4d07, 0xa0, 0x5b, 0xa3, 0x39, 0x5b, 0xb4, 0xee, 0xe7);


GUID_IO_VOLUME_DEVICE_INTERFACE  EQUATE('53F5630D-B6BF-11D0-94F2-00A0C91EFB8B')
MOUNTDEV_MOUNTED_DEVICE_GUID  EQUATE('53F5630D-B6BF-11D0-94F2-00A0C91EFB8B')
GUID_AVC_CLASS  EQUATE('095780C3-48A1-4570-BD95-46707F78C2DC')
GUID_VIRTUAL_AVC_CLASS  EQUATE('616EF4D0-23CE-446D-A568-C31EB01913D0')
KSCATEGORY_ACOUSTIC_ECHO_CANCEL  EQUATE('BF963D80-C559-11D0-8A2B-00A0C9255AC1')
KSCATEGORY_AUDIO  EQUATE('6994AD04-93EF-11D0-A3CC-00A0C9223196')
KSCATEGORY_AUDIO_DEVICE  EQUATE('FBF6F530-07B9-11D2-A71E-0000F8004788')
KSCATEGORY_AUDIO_GFX  EQUATE('9BAF9572-340C-11D3-ABDC-00A0C90AB16F')
KSCATEGORY_AUDIO_SPLITTER  EQUATE('9EA331FA-B91B-45F8-9285-BD2BC77AFCDE')
KSCATEGORY_BDA_IP_SINK  EQUATE('71985F4A-1CA1-11D3-9CC8-00C04F7971E0')
KSCATEGORY_BDA_NETWORK_EPG  EQUATE('71985F49-1CA1-11D3-9CC8-00C04F7971E0')
KSCATEGORY_BDA_NETWORK_PROVIDER  EQUATE('71985F4B-1CA1-11D3-9CC8-00C04F7971E0')
KSCATEGORY_BDA_NETWORK_TUNER  EQUATE('71985F48-1CA1-11D3-9CC8-00C04F7971E0')
KSCATEGORY_BDA_RECEIVER_COMPONENT  EQUATE('FD0A5AF4-B41D-11D2-9C95-00C04F7971E0')
KSCATEGORY_BDA_TRANSPORT_INFORMATION  EQUATE('A2E3074F-6C3D-11D3-B653-00C04F79498E')
KSCATEGORY_BRIDGE  EQUATE('085AFF00-62CE-11CF-A5D6-28DB04C10000')
KSCATEGORY_CAPTURE  EQUATE('65E8773D-8F56-11D0-A3B9-00A0C9223196')
KSCATEGORY_CLOCK  EQUATE('53172480-4791-11D0-A5D6-28DB04C10000')
KSCATEGORY_COMMUNICATIONSTRANSFORM  EQUATE('CF1DDA2C-9743-11D0-A3EE-00A0C9223196')
KSCATEGORY_CROSSBAR  EQUATE('A799A801-A46D-11D0-A18C-00A02401DCD4')
KSCATEGORY_DATACOMPRESSOR  EQUATE('1E84C900-7E70-11D0-A5D6-28DB04C10000')
KSCATEGORY_DATADECOMPRESSOR  EQUATE('2721AE20-7E70-11D0-A5D6-28DB04C10000')
KSCATEGORY_DATATRANSFORM  EQUATE('2EB07EA0-7E70-11D0-A5D6-28DB04C10000')
KSCATEGORY_DRM_DESCRAMBLE  EQUATE('FFBB6E3F-CCFE-4D84-90D9-421418B03A8E')
KSCATEGORY_ENCODER  EQUATE('19689BF6-C384-48FD-AD51-90E58C79F70B')
KSCATEGORY_ESCALANTE_PLATFORM_DRIVER  EQUATE('74F3AEA8-9768-11D1-8E07-00A0C95EC22E')
KSCATEGORY_FILESYSTEM  EQUATE('760FED5E-9357-11D0-A3CC-00A0C9223196')
KSCATEGORY_INTERFACETRANSFORM  EQUATE('CF1DDA2D-9743-11D0-A3EE-00A0C9223196')
KSCATEGORY_MEDIUMTRANSFORM  EQUATE('CF1DDA2E-9743-11D0-A3EE-00A0C9223196')
KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR  EQUATE('830A44F2-A32D-476B-BE97-42845673B35A')
KSCATEGORY_MIXER  EQUATE('AD809C00-7B88-11D0-A5D6-28DB04C10000')
KSCATEGORY_MULTIPLEXER  EQUATE('7A5DE1D3-01A1-452C-B481-4FA2B96271E8')
KSCATEGORY_NETWORK  EQUATE('67C9CC3C-69C4-11D2-8759-00A0C9223196')
KSCATEGORY_PREFERRED_MIDIOUT_DEVICE  EQUATE('D6C50674-72C1-11D2-9755-0000F8004788')
KSCATEGORY_PREFERRED_WAVEIN_DEVICE  EQUATE('D6C50671-72C1-11D2-9755-0000F8004788')
KSCATEGORY_PREFERRED_WAVEOUT_DEVICE  EQUATE('D6C5066E-72C1-11D2-9755-0000F8004788')
KSCATEGORY_PROXY  EQUATE('97EBAACA-95BD-11D0-A3EA-00A0C9223196')
KSCATEGORY_QUALITY  EQUATE('97EBAACB-95BD-11D0-A3EA-00A0C9223196')
KSCATEGORY_REALTIME  EQUATE('EB115FFC-10C8-4964-831D-6DCB02E6F23F')
KSCATEGORY_RENDER  EQUATE('65E8773E-8F56-11D0-A3B9-00A0C9223196')
KSCATEGORY_SPLITTER  EQUATE('0A4252A0-7E70-11D0-A5D6-28DB04C10000')
KSCATEGORY_SYNTHESIZER  EQUATE('DFF220F3-F70F-11D0-B917-00A0C9223196')
KSCATEGORY_SYSAUDIO  EQUATE('A7C7A5B1-5AF3-11D1-9CED-00A024BF0407')
KSCATEGORY_TEXT  EQUATE('6994AD06-93EF-11D0-A3CC-00A0C9223196')
KSCATEGORY_TOPOLOGY  EQUATE('DDA54A40-1E4C-11D1-A050-405705C10000')
KSCATEGORY_TVAUDIO  EQUATE('A799A802-A46D-11D0-A18C-00A02401DCD4')
KSCATEGORY_TVTUNER  EQUATE('A799A800-A46D-11D0-A18C-00A02401DCD4')
KSCATEGORY_VBICODEC  EQUATE('07DAD660-22F1-11D1-A9F4-00C04FBBDE8F')
KSCATEGORY_VIDEO  EQUATE('6994AD05-93EF-11D0-A3CC-00A0C9223196')
KSCATEGORY_VIRTUAL  EQUATE('3503EAC4-1F26-11D1-8AB0-00A0C9223196')
KSCATEGORY_VPMUX  EQUATE('A799A803-A46D-11D0-A18C-00A02401DCD4')
KSCATEGORY_WDMAUD  EQUATE('3E227E76-690D-11D2-8161-0000F8775BF1')
KSMFT_CATEGORY_AUDIO_DECODER  EQUATE('9EA73FB4-EF7A-4559-8D5D-719D8F0426C7')
KSMFT_CATEGORY_AUDIO_EFFECT  EQUATE('11064C48-3648-4ED0-932E-05CE8AC811B7')
KSMFT_CATEGORY_AUDIO_ENCODER  EQUATE('91C64BD0-F91E-4D8C-9276-DB248279D975')
KSMFT_CATEGORY_DEMULTIPLEXER  EQUATE('A8700A7A-939B-44C5-99D7-76226B23B3F1')
KSMFT_CATEGORY_MULTIPLEXER  EQUATE('059C561E-05AE-4B61-B69D-55B61EE54A7B')
KSMFT_CATEGORY_OTHER  EQUATE('90175D57-B7EA-4901-AEB3-933A8747756F')
KSMFT_CATEGORY_VIDEO_DECODER  EQUATE('D6C02D4B-6833-45B4-971A-05A4B04BAB91')
KSMFT_CATEGORY_VIDEO_EFFECT  EQUATE('12E17C21-532C-4A6E-8A1C-40825A736397')
KSMFT_CATEGORY_VIDEO_ENCODER  EQUATE('F79EAC7D-E545-4387-BDEE-D647D7BDE42A')
KSMFT_CATEGORY_VIDEO_PROCESSOR  EQUATE('302EA3FC-AA5F-47F9-9F7A-C2188BB16302')
GUID_DEVINTERFACE_USB_DEVICE  EQUATE('A5DCBF10-6530-11D2-901F-00C04FB951ED')
GUID_DEVINTERFACE_USB_HOST_CONTROLLER  EQUATE('3ABF6F2D-71C4-462A-8A92-1E6861E6AF27')
GUID_DEVINTERFACE_USB_HUB  EQUATE('F18A0E88-C30C-11D0-8815-00A0C906BED8')
GUID_DEVINTERFACE_WPD  EQUATE('6AC27878-A6FA-4155-BA85-F98F491D4F33')
GUID_DEVINTERFACE_WPD_PRIVATE  EQUATE('BA0C718F-4DED-49B7-BDD3-FABE28661211')
GUID_DEVINTERFACE_SIDESHOW  EQUATE('152E5811-FEB9-4B00-90F4-D32947AE1681')
GUID_DEVINTERFACE_THERMAL_COOLING  EQUATE('DBE4373D-3C81-40CB-ACE4-E0E5D05F0C9F')

FILE_REMOVABLE_MEDIA                    EQUATE(000000001h)
FILE_READ_ONLY_DEVICE                   EQUATE(000000002h)
FILE_FLOPPY_DISKETTE                    EQUATE(000000004h)
FILE_WRITE_ONCE_MEDIA                   EQUATE(000000008h)
FILE_REMOTE_DEVICE                      EQUATE(000000010h)
FILE_DEVICE_IS_MOUNTED                  EQUATE(000000020h)
FILE_VIRTUAL_VOLUME                     EQUATE(000000040h)
FILE_AUTOGENERATED_DEVICE_NAME          EQUATE(000000080h)
FILE_DEVICE_SECURE_OPEN                 EQUATE(000000100h)
FILE_CHARACTERISTIC_PNP_DEVICE          EQUATE(000000800h)
FILE_CHARACTERISTIC_TS_DEVICE           EQUATE(000001000h)
FILE_CHARACTERISTIC_WEBDAV_DEVICE       EQUATE(000002000h)

SPDRP_DEVICEDESC                  EQUATE(000000000h)  !// DeviceDesc (R/W)
SPDRP_HARDWAREID                  EQUATE(000000001h)  !// HardwareID (R/W)
SPDRP_COMPATIBLEIDS               EQUATE(000000002h)  !// CompatibleIDs (R/W)
SPDRP_UNUSED0                     EQUATE(000000003h)  !// unused
SPDRP_SERVICE                     EQUATE(000000004h)  !// Service (R/W)
SPDRP_UNUSED1                     EQUATE(000000005h)  !// unused
SPDRP_UNUSED2                     EQUATE(000000006h)  !// unused
SPDRP_CLASS                       EQUATE(000000007h)  !// Class (R--tied to ClassGUID)
SPDRP_CLASSGUID                   EQUATE(000000008h)  !// ClassGUID (R/W)
SPDRP_DRIVER                      EQUATE(000000009h)  !// Driver (R/W)
SPDRP_CONFIGFLAGS                 EQUATE(00000000Ah)  !// ConfigFlags (R/W)
SPDRP_MFG                         EQUATE(00000000Bh)  !// Mfg (R/W)
SPDRP_FRIENDLYNAME                EQUATE(00000000Ch)  !// FriendlyName (R/W)
SPDRP_LOCATION_INFORMATION        EQUATE(00000000Dh)  !// LocationInformation (R/W)
SPDRP_PHYSICAL_DEVICE_OBJECT_NAME EQUATE(00000000Eh)  !// PhysicalDeviceObjectName (R)
SPDRP_CAPABILITIES                EQUATE(00000000Fh)  !// Capabilities (R)
SPDRP_UI_NUMBER                   EQUATE(000000010h)  !// UiNumber (R)
SPDRP_UPPERFILTERS                EQUATE(000000011h)  !// UpperFilters (R/W)
SPDRP_LOWERFILTERS                EQUATE(000000012h)  !// LowerFilters (R/W)
SPDRP_BUSTYPEGUID                 EQUATE(000000013h)  !// BusTypeGUID (R)
SPDRP_LEGACYBUSTYPE               EQUATE(000000014h)  !// LegacyBusType (R)
SPDRP_BUSNUMBER                   EQUATE(000000015h)  !// BusNumber (R)
SPDRP_ENUMERATOR_NAME             EQUATE(000000016h)  !// Enumerator Name (R)
SPDRP_SECURITY                    EQUATE(000000017h)  !// Security (R/W, binary form)
SPDRP_SECURITY_SDS                EQUATE(000000018h)  !// Security (W, SDS form)
SPDRP_DEVTYPE                     EQUATE(000000019h)  !// Device Type (R/W)
SPDRP_EXCLUSIVE                   EQUATE(00000001Ah)  !// Device is exclusive-access (R/W)
SPDRP_CHARACTERISTICS             EQUATE(00000001Bh)  !// Device Characteristics (R/W)
SPDRP_ADDRESS                     EQUATE(00000001Ch)  !// Device Address (R)
SPDRP_UI_NUMBER_DESC_FORMAT       EQUATE(00000001Dh)  !// UiNumberDescFormat (R/W)
SPDRP_DEVICE_POWER_DATA           EQUATE(00000001Eh)  !// Device Power Data (R)
SPDRP_REMOVAL_POLICY              EQUATE(00000001Fh)  !// Removal Policy (R)
SPDRP_REMOVAL_POLICY_HW_DEFAULT   EQUATE(000000020h)  !// Hardware Removal Policy (R)
SPDRP_REMOVAL_POLICY_OVERRIDE     EQUATE(000000021h)  !// Removal Policy Override (RW)
SPDRP_INSTALL_STATE               EQUATE(000000022h)  !// Device Install State (R)
SPDRP_LOCATION_PATHS              EQUATE(000000023h)  !// Device Location Paths (R)
SPDRP_BASE_CONTAINERID            EQUATE(000000024h)  !// Base ContainerID (R)
SPDRP_MAXIMUM_PROPERTY            EQUATE(000000025h)  !// Upper bound on ordinals

!https://www.codemachine.com/downloads/win71/wdm.h

!typedef struct CM_Power_Data_s {
!    ULONG               PD_Size;
!    DEVICE_POWER_STATE  PD_MostRecentPowerState;
!    ULONG               PD_Capabilities;
!    ULONG               PD_D1Latency;
!    ULONG               PD_D2Latency;
!    ULONG               PD_D3Latency;
!    DEVICE_POWER_STATE  PD_PowerStateMapping[POWER_SYSTEM_MAXIMUM];
!    SYSTEM_POWER_STATE  PD_DeepestSystemWake;
!} CM_POWER_DATA, *PCM_POWER_DATA;
!
!#endif // (NTDDI_VERSION >= NTDDI_WINXP)

!typedef enum {
!    SystemPowerPolicyAc,
!    SystemPowerPolicyDc,
!    VerifySystemPolicyAc,
!    VerifySystemPolicyDc,
!    SystemPowerCapabilities,
!    SystemBatteryState,
!    SystemPowerStateHandler,
!    ProcessorStateHandler,
!    SystemPowerPolicyCurrent,
!    AdministratorPowerPolicy,
!    SystemReserveHiberFile,
!    ProcessorInformation,
!    SystemPowerInformation,
!    ProcessorStateHandler2,
!    LastWakeTime,                                   // Compare with KeQueryInterruptTime()
!    LastSleepTime,                                  // Compare with KeQueryInterruptTime()
!    SystemExecutionState,
!    SystemPowerStateNotifyHandler,
!    ProcessorPowerPolicyAc,
!    ProcessorPowerPolicyDc,
!    VerifyProcessorPowerPolicyAc,
!    VerifyProcessorPowerPolicyDc,
!    ProcessorPowerPolicyCurrent,
!    SystemPowerStateLogging,
!    SystemPowerLoggingEntry,
!    SetPowerSettingValue,
!    NotifyUserPowerSetting,
!    PowerInformationLevelUnused0,
!    PowerInformationLevelUnused1,
!    SystemVideoState,
!    TraceApplicationPowerMessage,
!    TraceApplicationPowerMessageEnd,
!    ProcessorPerfStates,
!    ProcessorIdleStates,
!    ProcessorCap,
!    SystemWakeSource,
!    SystemHiberFileInformation,
!    TraceServicePowerMessage,
!    ProcessorLoad,
!    PowerShutdownNotification,
!    MonitorCapabilities,
!    SessionPowerInit,
!    SessionDisplayState,
!    PowerRequestCreate,
!    PowerRequestAction,
!    GetPowerRequestList,
!    ProcessorInformationEx,
!    NotifyUserModeLegacyPowerEvent,
!    GroupPark,
!    ProcessorIdleDomains,
!    WakeTimerList,
!    SystemHiberFileSize,
!    PowerInformationLevelMaximum
!} POWER_INFORMATION_LEVEL;

DIGCF_DEFAULT       EQUATE(001h)
DIGCF_PRESENT           EQUATE(002h)
DIGCF_ALLCLASSES        EQUATE(004h)
DIGCF_PROFILE           EQUATE(008h)
DIGCF_DEVICEINTERFACE   EQUATE(0010h)

FACILITY_DEBUGGER   EQUATE(0001h)
FACILITY_RPC_RUNTIME EQUATE(0002h)
FACILITY_RPC_STUBS EQUATE(0003h)
FACILITY_IO_ERROR_CODE EQUATE(0004h)
FACILITY_NTWIN32 EQUATE(0007h)
FACILITY_NTSSPI EQUATE(0009h)
FACILITY_TERMINAL_SERVER EQUATE(000Ah)
FACILTIY_MUI_ERROR_CODE EQUATE(000Bh)
FACILITY_USB_ERROR_CODE EQUATE(0010h)
FACILITY_HID_ERROR_CODE EQUATE(0011h)
FACILITY_FIREWIRE_ERROR_CODE EQUATE(0012h)
FACILITY_CLUSTER_ERROR_CODE EQUATE(0013h)
FACILITY_ACPI_ERROR_CODE EQUATE(0014h)
FACILITY_SXS_ERROR_CODE EQUATE(0015h)
FACILITY_TRANSACTION EQUATE(0019h)
FACILITY_COMMONLOG EQUATE(001Ah)
FACILITY_VIDEO EQUATE(001Bh)
FACILITY_FILTER_MANAGER EQUATE(001Ch)
FACILITY_MONITOR EQUATE(001Dh)
FACILITY_GRAPHICS_KERNEL EQUATE(001Eh)
FACILITY_DRIVER_FRAMEWORK EQUATE(0020h)
FACILITY_FVE_ERROR_CODE EQUATE(0021h)
FACILITY_FWP_ERROR_CODE EQUATE(0022h)
FACILITY_NDIS_ERROR_CODE EQUATE(0023h)
FACILITY_HYPERVISOR EQUATE(0035h)
FACILITY_IPSEC EQUATE(0036h)
FACILITY_MAXIMUM_VALUE EQUATE(0037h) 

!1 !OCR_NORMAL          32512
!2 !OCR_IBEAM           32513
!3 !OCR_WAIT            32514
!4 !OCR_CROSS           32515
!5 !OCR_UP              32516
!6 !OCR_SIZE            32640   /* OBSOLETE: use OCR_SIZEALL */
!7 !OCR_ICON            32641   /* OBSOLETE: use OCR_NORMAL */
!8 !OCR_SIZENWSE        32642
!9 !OCR_SIZENESW        32643
!10 !OCR_SIZEWE          32644
!11 !OCR_SIZENS          32645
!12 !OCR_SIZEALL         32646
!13 !OCR_ICOCUR          32647   /* OBSOLETE: use OIC_WINLOGO */
!14 !OCR_NO              32648
!15 !OCR_HAND            32649
!16 !OCR_APPSTARTING     32650

!/* GetDCEx flags*/
DCX_WINDOW           EQUATE(00000001)
DCX_CACHE            EQUATE(00000002)
DCX_NORESETATTRS     EQUATE(00000004)
DCX_CLIPCHILDREN     EQUATE(00000008)
DCX_CLIPSIBLINGS     EQUATE(00000010)
DCX_PARENTCLIP       EQUATE(00000020)
DCX_EXCLUDERGN       EQUATE(00000040)
DCX_INTERSECTRGN     EQUATE(00000080)
DCX_EXCLUDEUPDATE    EQUATE(00000100)
DCX_INTERSECTUPDATE  EQUATE(00000200)
DCX_LOCKWINDOWUPDATE EQUATE(00000400)
DCX_VALIDATE         EQUATE(00200000)
DCX_DEFAULTCLIP      EQUATE(080000000)	!/* microwin only*/

WVR_ALIGNTOP EQUATE(010h)
WVR_ALIGNRIGHT EQUATE(080h)
WVR_ALIGNLEFT EQUATE(020h)
WVR_ALIGNBOTTOM EQUATE(040h)
WVR_HREDRAW EQUATE(0100h)
WVR_VREDRAW EQUATE(0200h)
WVR_REDRAW EQUATE(0300h)
WVR_VALIDRECTS EQUATE(0400h)


OCR_NORMAL     EQUATE(32512)
OCR_IBEAM      EQUATE(32513)
OCR_WAIT       EQUATE(32514)
OCR_CROSS      EQUATE(32515)
OCR_UP         EQUATE(32516)
OCR_SIZE       EQUATE(32640)
OCR_ICON       EQUATE(32641)
OCR_SIZENWSE   EQUATE(32642)
OCR_SIZENESW   EQUATE(32643)
OCR_SIZEWE    EQUATE(32644)
OCR_SIZENS    EQUATE(32645)
OCR_SIZEALL   EQUATE(32646)
OCR_ICOCUR    EQUATE(32647)
OCR_NO        EQUATE(32648)
OCR_HAND      EQUATE(32649)
OCR_APPSTARTING  EQUATE(32650)       
       
OCRNORMAL     EQUATE(1)
OCRIBEAM      EQUATE(2)
OCRWAIT       EQUATE(3)
OCRCROSS      EQUATE(4)
OCRUP         EQUATE(5)
OCRSIZE       EQUATE(6)
OCRICON       EQUATE(7)
OCRSIZENWSE   EQUATE(8)
OCRSIZENESW   EQUATE(9)
OCRSIZEWE    EQUATE(10)
OCRSIZENS    EQUATE(11)
OCRSIZEALL   EQUATE(12)
OCRICOCUR    EQUATE(13)
OCRNO        EQUATE(14)
OCRHAND      EQUATE(15)
OCRAPPSTARTING  EQUATE(16)



RID_HEADER          EQUATE(010000005h)
RID_INPUT EQUATE(010000003h)
CS_DROPSHADOW       EQUATE(020000h)

WTNCA_NODRAWCAPTION EQUATE(01h)
WTNCA_NODRAWICON EQUATE(02h)
WTNCA_NOSYSMENU EQUATE(04h)
WTNCA_NOMIRRORHELP  EQUATE(08h)
WTNCA_VALIDBITS EQUATE(0Fh)           
WTA_NONCLIENT       EQUATE(1)
 
ABM_NEW             EQUATE(00000000H)
ABM_REMOVE  EQUATE(00000001H)
ABM_QUERYPOS  EQUATE(00000002H)
ABM_SETPOS  EQUATE(00000003H)
ABM_GETSTATE  EQUATE(00000004H)
ABM_GETTASKBARPOS  EQUATE(00000005H)
ABM_ACTIVATE  EQUATE(00000006H)
ABM_GETAUTOHIDEBAR  EQUATE(00000007H)
ABM_SETAUTOHIDEBAR  EQUATE(00000008H)
ABM_WINDOWPOSCHANGED  EQUATE(0000009H)
ABM_SETSTATE  EQUATE(0000000aH)
ABM_GETAUTOHIDEBAREX  EQUATE(0000000bH)
ABM_SETAUTOHIDEBAREX  EQUATE(0000000cH)

none organized bunch of equates (sorry for the mess :wink:

ABN_STATECHANGE  EQUATE(0000000H)
ABN_POSCHANGED  EQUATE(0000001H)
ABN_FULLSCREENAPP  EQUATE(0000002H)
ABN_WINDOWARRANGE  EQUATE(0000003H)
ABS_AUTOHIDE  EQUATE(0000001H)
ABS_ALWAYSONTOP  EQUATE(0000002H)
ABE_LEFT EQUATE(0)
ABE_TOP EQUATE(1)
ABE_RIGHT EQUATE(2)
ABE_BOTTOM EQUATE(3)

LWA_COLORKEY EQUATE(01H)
LWA_ALPHA EQUATE(02H)



WM_THEMECHANGED EQUATE(031Ah)
WM_UAHDESTROYWINDOW EQUATE(0090h)
WM_UAHDRAWMENU EQUATE(0091h)
WM_UAHDRAWMENUITEM EQUATE(0092h)
WM_UAHINITMENU EQUATE(0093h)
WM_UAHMEASUREMENUITEM EQUATE(0094h)
WM_UAHNCPAINTMENUPOPUP EQUATE(0095h)

WM_NCUAHDRAWCAPTION EQUATE(0AEh)
WM_NCUAHDRAWFRAME   EQUATE(0AFh)

WM_DWMNCRENDERINGCHANGED EQUATE(031Fh)

DWMNCRP_USEWINDOWSTYLE      EQUATE(0)
DWMNCRP_DISABLED  EQUATE(1)
DWMNCRP_ENABLED  EQUATE(2)
DWMNCRP_LAST        EQUATE(3)
DCX_USESTYLE EQUATE(010000h)
!DCX_LOCKWINDOWUPDATE EQUATE(0400H)
DCX_NODELETERGN EQUATE(040000h)
!WM_CONVERTREQUESTEX 0x108
!WM_IME_STARTCOMPOSITION 0x10D
!WM_IME_ENDCOMPOSITION 0x10E
!WM_IME_COMPOSITION 0x10F
!WM_IME_KEYLAST 0x10F
!WM_IME_SETCONTEXT 0x281
!WM_IME_NOTIFY 0x282
!WM_IME_CONTROL 0x283
!WM_IME_COMPOSITIONFULL 0x284
!WM_IME_SELECT 0x285
!WM_IME_CHAR 0x286
!WM_IME_KEYDOWN 0x290
!WM_IME_KEYUP 0x291
!#if (_WIN32_WINNT >= 0x0500)
!WM_IME_REQUEST 0x0288
!#endif
!IMC_GETCANDIDATEPOS 7
!IMC_SETCANDIDATEPOS 8
!IMC_GETCOMPOSITIONFONT 9
!IMC_SETCOMPOSITIONFONT 10
!IMC_GETCOMPOSITIONWINDOW 11
!IMC_SETCOMPOSITIONWINDOW 12
!IMC_GETSTATUSWINDOWPOS 15
!IMC_SETSTATUSWINDOWPOS 16
!IMC_CLOSESTATUSWINDOW 0x21
!IMC_OPENSTATUSWINDOW 0x22
!IMN_CLOSESTATUSWINDOW 1
IMN_OPENSTATUSWINDOW EQUATE(2)
!IMN_CHANGECANDIDATE 3
!IMN_CLOSECANDIDATE 4
!IMN_OPENCANDIDATE 5
!IMN_SETCONVERSIONMODE 6
!IMN_SETSENTENCEMODE 7
!IMN_SETOPENSTATUS 8
!IMN_SETCANDIDATEPOS 9
!IMN_SETCOMPOSITIONFONT 10
!IMN_SETCOMPOSITIONWINDOW 11
!IMN_SETSTATUSWINDOWPOS 12
!IMN_GUIDELINE 13
!IMN_PRIVATE 14
!NI_OPENCANDIDATE 16
!NI_CLOSECANDIDATE 17
!NI_SELECTCANDIDATESTR 18
!NI_CHANGECANDIDATELIST 19
!NI_FINALIZECONVERSIONRESULT 20
!NI_COMPOSITIONSTR 21
!NI_SETCANDIDATE_PAGESTART 22
!NI_SETCANDIDATE_PAGESIZE 23
!NI_IMEMENUSELECTED 24
!ISC_SHOWUICANDIDATEWINDOW 1
!ISC_SHOWUICOMPOSITIONWINDOW 0x80000000
!ISC_SHOWUIGUIDELINE 0x40000000
!ISC_SHOWUIALLCANDIDATEWINDOW 15
!ISC_SHOWUIALL 0xC000000F
!CPS_COMPLETE 1
!CPS_CONVERT 2
!CPS_REVERT 3
!CPS_CANCEL 4
!IME_CHOTKEY_IME_NONIME_TOGGLE 16
!IME_CHOTKEY_SHAPE_TOGGLE 17
!IME_CHOTKEY_SYMBOL_TOGGLE 18
!IME_JHOTKEY_CLOSE_OPEN 0x30
!IME_KHOTKEY_SHAPE_TOGGLE 0x50
!IME_KHOTKEY_HANJACONVERT 0x51
!IME_KHOTKEY_ENGLISH 0x52
!IME_THOTKEY_IME_NONIME_TOGGLE 0x70
!IME_THOTKEY_SHAPE_TOGGLE 0x71
!IME_THOTKEY_SYMBOL_TOGGLE 0x72
!IME_HOTKEY_DSWITCH_FIRST 256
!IME_HOTKEY_DSWITCH_LAST 0x11F
!IME_ITHOTKEY_RESEND_RESULTSTR 512
!IME_ITHOTKEY_PREVIOUS_COMPOSITION 513
!IME_ITHOTKEY_UISTYLE_TOGGLE 514
!GCS_COMPREADSTR 1
!GCS_COMPREADATTR 2
!GCS_COMPREADCLAUSE 4
!GCS_COMPSTR 8
!GCS_COMPATTR 16
!GCS_COMPCLAUSE 32
!GCS_CURSORPOS 128
!GCS_DELTASTART 256
!GCS_RESULTREADSTR 512
!GCS_RESULTREADCLAUSE 1024
!GCS_RESULTSTR 2048
!GCS_RESULTCLAUSE 4096
!CS_INSERTCHAR 0x2000
!CS_NOMOVECARET 0x4000
!IMEVER_0310 0x3000A
!IMEVER_0400 0x40000
!IME_PROP_AT_CARET 0x10000
!IME_PROP_SPECIAL_UI 0x20000
!IME_PROP_CANDLIST_START_FROM_1 0x40000
!IME_PROP_UNICODE 0x80000
!UI_CAP_2700 1
!UI_CAP_ROT90 2
!UI_CAP_ROTANY 4
!SCS_CAP_COMPSTR 1
!SCS_CAP_MAKEREAD 2
!SELECT_CAP_CONVERSION 1
!SELECT_CAP_SENTENCE 2
!GGL_LEVEL 1
!GGL_INDEX 2
!GGL_STRING 3
!GGL_PRIVATE 4
!GL_LEVEL_NOGUIDELINE 0
!GL_LEVEL_FATAL 1
!GL_LEVEL_ERROR 2
!GL_LEVEL_WARNING 3
!GL_LEVEL_INFORMATION 4
!GL_ID_UNKNOWN 0
!GL_ID_NOMODULE 1
!GL_ID_NODICTIONARY 16
!GL_ID_CANNOTSAVE 17
!GL_ID_NOCONVERT 32
!GL_ID_TYPINGERROR 33
!GL_ID_TOOMANYSTROKE 34
!GL_ID_READINGCONFLICT 35
!GL_ID_INPUTREADING 36
!GL_ID_INPUTRADICAL 37
!GL_ID_INPUTCODE 38
!GL_ID_INPUTSYMBOL 39
!GL_ID_CHOOSECANDIDATE 40
!GL_ID_REVERSECONVERSION 41
!GL_ID_PRIVATE_FIRST 0x8000
!GL_ID_PRIVATE_LAST 0xFFFF
!IGP_GETIMEVERSION (DWORD)(-4)
!IGP_PROPERTY 4
!IGP_CONVERSION 8
!IGP_SENTENCE 12
!IGP_UI 16
!IGP_SETCOMPSTR 0x14
!IGP_SELECT 0x18
!SCS_SETSTR (GCS_COMPREADSTR|GCS_COMPSTR)
!SCS_CHANGEATTR (GCS_COMPREADATTR|GCS_COMPATTR)
!SCS_CHANGECLAUSE (GCS_COMPREADCLAUSE|GCS_COMPCLAUSE)
!ATTR_INPUT 0
!ATTR_TARGET_CONVERTED 1
!ATTR_CONVERTED 2
!ATTR_TARGET_NOTCONVERTED 3
!ATTR_INPUT_ERROR 4
!ATTR_FIXEDCONVERTED 5
!CFS_DEFAULT 0
!CFS_RECT 1
!CFS_POINT 2
!CFS_SCREEN 4
!CFS_FORCE_POSITION 32
!CFS_CANDIDATEPOS 64
!CFS_EXCLUDE 128
!GCL_CONVERSION 1
!GCL_REVERSECONVERSION 2
!GCL_REVERSE_LENGTH 3
!IME_CMODE_ALPHANUMERIC 0
!IME_CMODE_NATIVE 1
!IME_CMODE_CHINESE IME_CMODE_NATIVE
!IME_CMODE_HANGEUL IME_CMODE_NATIVE
!IME_CMODE_HANGUL IME_CMODE_NATIVE
!IME_CMODE_JAPANESE IME_CMODE_NATIVE
!IME_CMODE_KATAKANA 2
!IME_CMODE_LANGUAGE 3
!IME_CMODE_FULLSHAPE 8
!IME_CMODE_ROMAN 16
!IME_CMODE_CHARCODE 32
!IME_CMODE_HANJACONVERT 64
!IME_CMODE_SOFTKBD 128
!IME_CMODE_NOCONVERSION 256
!IME_CMODE_EUDC 512
!IME_CMODE_SYMBOL 1024
!IME_CMODE_FIXED 2048
!IME_SMODE_NONE 0
!IME_SMODE_PLAURALCLAUSE 1
!IME_SMODE_SINGLECONVERT 2
!IME_SMODE_AUTOMATIC 4
!IME_SMODE_PHRASEPREDICT 8
!IME_CAND_UNKNOWN 0
!IME_CAND_READ 1
!IME_CAND_CODE 2
!IME_CAND_MEANING 3
!IME_CAND_RADICAL 4
!IME_CAND_STROKE 5
!IMM_ERROR_NODATA (-1)
!IMM_ERROR_GENERAL (-2)
!IME_CONFIG_GENERAL 1
!IME_CONFIG_REGISTERWORD 2
!IME_CONFIG_SELECTDICTIONARY 3
!IME_ESC_QUERY_SUPPORT 3
!IME_ESC_RESERVED_FIRST 4
!IME_ESC_RESERVED_LAST 0x7FF
!IME_ESC_PRIVATE_FIRST 0x800
!IME_ESC_PRIVATE_LAST 0xFFF
!IME_ESC_SEQUENCE_TO_INTERNAL 0x1001
!IME_ESC_GET_EUDC_DICTIONARY 0x1003
!IME_ESC_SET_EUDC_DICTIONARY 0x1004
!IME_ESC_MAX_KEY 0x1005
!IME_ESC_IME_NAME 0x1006
!IME_ESC_SYNC_HOTKEY 0x1007
!IME_ESC_HANJA_MODE 0x1008
!IME_ESC_AUTOMATA 0x1009
!IME_REGWORD_STYLE_EUDC 1
!IME_REGWORD_STYLE_USER_FIRST 0x80000000
!IME_REGWORD_STYLE_USER_LAST 0xFFFFFFFF
!IMR_RECONVERTSTRING 4
!IMR_QUERYCHARPOSITION 6
!SOFTKEYBOARD_TYPE_T1 1
!SOFTKEYBOARD_TYPE_C1 2
!IMEMENUITEM_STRING_SIZE 80
!MOD_ALT 1
!MOD_CONTROL 2
!MOD_SHIFT 4
!MOD_WIN 8
!MOD_IGNORE_ALL_MODIFIER 1024
!MOD_ON_KEYUP  2048
!MOD_RIGHT 16384
!MOD_LEFT 32768
!IACE_CHILDREN 1
!IACE_DEFAULT 16
!IACE_IGNORENOCONTEXT 32
!IGIMIF_RIGHTMENU 1
!IGIMII_CMODE 1
!IGIMII_SMODE 2
!IGIMII_CONFIGURE 4
!IGIMII_TOOLS 8
!IGIMII_HELP 16
!IGIMII_OTHER 32
!IGIMII_INPUTTOOLS 64
!IMFT_RADIOCHECK 1
!IMFT_SEPARATOR 2
!IMFT_SUBMENU 4
!IMFS_GRAYED MFS_GRAYED
!IMFS_DISABLED MFS_DISABLED
!IMFS_CHECKED MFS_CHECKED
!IMFS_HILITE MFS_HILITE
!IMFS_ENABLED MFS_ENABLED
!IMFS_UNCHECKED MFS_UNCHECKED
!IMFS_UNHILITE MFS_UNHILITE
!IMFS_DEFAULT MFS_DEFAULT
!#ifndef VK_PROCESSKEY
!VK_PROCESSKEY 0x0E5
!#endif
!STYLE_DESCRIPTION_SIZE 32
!typedef DWORD HIMC;
!typedef DWORD HIMCC;
!typedef HKL *LPHKL;
!typedef struct tagCOMPOSITIONFORM {
!	DWORD dwStyle;
!	POINT ptCurrentPos;
!	RECT rcArea;
!} COMPOSITIONFORM,*PCOMPOSITIONFORM,*LPCOMPOSITIONFORM;
!typedef struct tagCANDIDATEFORM {
!	DWORD dwIndex;
!	DWORD dwStyle;
!	POINT ptCurrentPos;
!	RECT rcArea;
!} CANDIDATEFORM,*PCANDIDATEFORM,*LPCANDIDATEFORM;
!typedef struct tagCANDIDATELIST {
!	DWORD dwSize;
!	DWORD dwStyle;
!	DWORD dwCount;
!	DWORD dwSelection;
!	DWORD dwPageStart;
!	DWORD dwPageSize;
!	DWORD dwOffset[1];
!} CANDIDATELIST,*PCANDIDATELIST,*LPCANDIDATELIST;
!typedef struct tagIMECHARPOSITION {
!  DWORD  dwSize;
!  DWORD  dwCharPos;
!  POINT  pt;
!  UINT   cLineHeight;
!  RECT   rcDocument;
!} IMECHARPOSITION, *PIMECHARPOSITION;
!typedef struct tagRECONVERTSTRING {
!  DWORD dwSize;
!  DWORD dwVersion;
!  DWORD dwStrLen;
!  DWORD dwStrOffset;
!  DWORD dwCompStrLen;
!  DWORD dwCompStrOffset;
!  DWORD dwTargetStrLen;
!  DWORD dwTargetStrOffset;
!} RECONVERTSTRING, *PRECONVERTSTRING;
!typedef struct tagREGISTERWORDA {
!	LPSTR lpReading;
!	LPSTR lpWord;
!} REGISTERWORDA,*PREGISTERWORDA,*LPREGISTERWORDA;
!typedef struct tagREGISTERWORDW {
!	LPWSTR lpReading;
!	LPWSTR lpWord;
!} REGISTERWORDW,*PREGISTERWORDW,*LPREGISTERWORDW;
!typedef struct tagSTYLEBUFA {
!	DWORD dwStyle;
!	CHAR szDescription[STYLE_DESCRIPTION_SIZE];
!} STYLEBUFA,*PSTYLEBUFA,*LPSTYLEBUFA;
!typedef struct tagSTYLEBUFW {
!	DWORD dwStyle;
!	WCHAR szDescription[STYLE_DESCRIPTION_SIZE];
!} STYLEBUFW,*PSTYLEBUFW,*LPSTYLEBUFW;
!typedef struct tagIMEMENUITEMINFOA {
!	UINT cbSize;
!	UINT fType;
!	UINT fState;
!	UINT wID;
!	HBITMAP hbmpChecked;
!	HBITMAP hbmpUnchecked;
!	DWORD dwItemData;
!	CHAR szString[IMEMENUITEM_STRING_SIZE];
!	HBITMAP hbmpItem;
!} IMEMENUITEMINFOA,*PIMEMENUITEMINFOA,*LPIMEMENUITEMINFOA;
!typedef struct tagIMEMENUITEMINFOW {
!	UINT cbSize;
!	UINT fType;
!	UINT fState;
!	UINT wID;
!	HBITMAP hbmpChecked;
!	HBITMAP hbmpUnchecked;
!	DWORD dwItemData;
!	WCHAR szString[IMEMENUITEM_STRING_SIZE];
!	HBITMAP hbmpItem;
!} IMEMENUITEMINFOW,*PIMEMENUITEMINFOW,*LPIMEMENUITEMINFOW;
!typedef int (CALLBACK *REGISTERWORDENUMPROCA)(LPCSTR, DWORD, LPCSTR, LPVOID);
!typedef int (CALLBACK *REGISTERWORDENUMPROCW)(LPCWSTR, DWORD, LPCWSTR, LPVOID);
!#ifdef UNICODE
!REGISTERWORDENUMPROC REGISTERWORDENUMPROCW
!typedef REGISTERWORDW REGISTERWORD,*PREGISTERWORD,*LPREGISTERWORD;
!typedef STYLEBUFW STYLEBUF,*PSTYLEBUF,*LPSTYLEBUF;
!typedef IMEMENUITEMINFOW IMEMENUITEMINFO,*PIMEMENUITEMINFO,*LPIMEMENUITEMINFO;
!#else
!REGISTERWORDENUMPROC REGISTERWORDENUMPROCA
!typedef REGISTERWORDA REGISTERWORD,*PREGISTERWORD,*LPREGISTERWORD;
!typedef STYLEBUFA STYLEBUF,*PSTYLEBUF,*LPSTYLEBUF;
!typedef IMEMENUITEMINFOA IMEMENUITEMINFO,*PIMEMENUITEMINFO,*LPIMEMENUITEMINFO;
!#endif
!HKL WINAPI ImmInstallIMEA(LPCSTR,LPCSTR);
!HKL WINAPI ImmInstallIMEW(LPCWSTR,LPCWSTR);
!HWND WINAPI ImmGetDefaultIMEWnd(HWND);
!UINT WINAPI ImmGetDescriptionA(HKL,LPSTR,UINT);
!UINT WINAPI ImmGetDescriptionW(HKL,LPWSTR,UINT);
!UINT WINAPI ImmGetIMEFileNameA(HKL,LPSTR,UINT);
!UINT WINAPI ImmGetIMEFileNameW(HKL,LPWSTR,UINT);
!DWORD WINAPI ImmGetProperty(HKL,DWORD);
!BOOL WINAPI ImmIsIME(HKL);
!BOOL WINAPI ImmSimulateHotKey(HWND,DWORD);
!HIMC WINAPI ImmCreateContext(void);
!BOOL WINAPI ImmDestroyContext(HIMC);
!HIMC WINAPI ImmGetContext(HWND);
!BOOL WINAPI ImmReleaseContext(HWND,HIMC);
!HIMC WINAPI ImmAssociateContext(HWND,HIMC);
!LONG WINAPI ImmGetCompositionStringA(HIMC,DWORD,PVOID,DWORD);
!LONG WINAPI ImmGetCompositionStringW(HIMC,DWORD,PVOID,DWORD);
!BOOL WINAPI ImmSetCompositionStringA(HIMC,DWORD,PCVOID,DWORD,PCVOID,DWORD);
!BOOL WINAPI ImmSetCompositionStringW(HIMC,DWORD,PCVOID,DWORD,PCVOID,DWORD);
!DWORD WINAPI ImmGetCandidateListCountA(HIMC,PDWORD);
!DWORD WINAPI ImmGetCandidateListCountW(HIMC,PDWORD);
!DWORD WINAPI ImmGetCandidateListA(HIMC,DWORD,PCANDIDATELIST,DWORD);
!DWORD WINAPI ImmGetCandidateListW(HIMC,DWORD,PCANDIDATELIST,DWORD);
!DWORD WINAPI ImmGetGuideLineA(HIMC,DWORD,LPSTR,DWORD);
!DWORD WINAPI ImmGetGuideLineW(HIMC,DWORD,LPWSTR,DWORD);
!BOOL WINAPI ImmGetConversionStatus(HIMC,LPDWORD,PDWORD);
!BOOL WINAPI ImmSetConversionStatus(HIMC,DWORD,DWORD);
!BOOL WINAPI ImmGetOpenStatus(HIMC);
!BOOL WINAPI ImmSetOpenStatus(HIMC,BOOL);
!#ifndef NOGDI
!BOOL WINAPI ImmGetCompositionFontA(HIMC,LPLOGFONTA);
!BOOL WINAPI ImmGetCompositionFontW(HIMC,LPLOGFONTW);
!BOOL WINAPI ImmSetCompositionFontA(HIMC,LPLOGFONTA);
!BOOL WINAPI ImmSetCompositionFontW(HIMC,LPLOGFONTW);
!#endif
!BOOL WINAPI ImmConfigureIMEA(HKL,HWND,DWORD,PVOID);
!BOOL WINAPI ImmConfigureIMEW(HKL,HWND,DWORD,PVOID);
!LRESULT WINAPI ImmEscapeA(HKL,HIMC,UINT,PVOID);
!LRESULT WINAPI ImmEscapeW(HKL,HIMC,UINT,PVOID);
!DWORD WINAPI ImmGetConversionListA(HKL,HIMC,LPCSTR,PCANDIDATELIST,DWORD,UINT);
!DWORD WINAPI ImmGetConversionListW(HKL,HIMC,LPCWSTR,PCANDIDATELIST,DWORD,UINT);
!BOOL WINAPI ImmNotifyIME(HIMC,DWORD,DWORD,DWORD);
!BOOL WINAPI ImmGetStatusWindowPos(HIMC,LPPOINT);
!BOOL WINAPI ImmSetStatusWindowPos(HIMC,LPPOINT);
!BOOL WINAPI ImmGetCompositionWindow(HIMC,PCOMPOSITIONFORM);
!BOOL WINAPI ImmSetCompositionWindow(HIMC,PCOMPOSITIONFORM);
!BOOL WINAPI ImmGetCandidateWindow(HIMC,DWORD,PCANDIDATEFORM);
!BOOL WINAPI ImmSetCandidateWindow(HIMC,PCANDIDATEFORM);
!BOOL WINAPI ImmIsUIMessageA(HWND,UINT,WPARAM,LPARAM);
!BOOL WINAPI ImmIsUIMessageW(HWND,UINT,WPARAM,LPARAM);
!UINT WINAPI ImmGetVirtualKey(HWND);
!BOOL WINAPI ImmRegisterWordA(HKL,LPCSTR,DWORD,LPCSTR);
!BOOL WINAPI ImmRegisterWordW(HKL,LPCWSTR,DWORD,LPCWSTR);
!BOOL WINAPI ImmUnregisterWordA(HKL,LPCSTR,DWORD,LPCSTR);
!BOOL WINAPI ImmUnregisterWordW(HKL,LPCWSTR,DWORD,LPCWSTR);
!UINT WINAPI ImmGetRegisterWordStyleA(HKL,UINT,PSTYLEBUFA);
!UINT WINAPI ImmGetRegisterWordStyleW(HKL,UINT,PSTYLEBUFW);
!UINT WINAPI ImmEnumRegisterWordA(HKL,REGISTERWORDENUMPROCA,LPCSTR,DWORD,LPCSTR,PVOID);
!UINT WINAPI ImmEnumRegisterWordW(HKL,REGISTERWORDENUMPROCW,LPCWSTR,DWORD,LPCWSTR,PVOID);
!BOOL WINAPI EnableEUDC(BOOL);
!BOOL WINAPI ImmDisableIME(DWORD);
!DWORD WINAPI ImmGetImeMenuItemsA(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOA,LPIMEMENUITEMINFOA,DWORD);
!DWORD WINAPI ImmGetImeMenuItemsW(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOW,LPIMEMENUITEMINFOW,DWORD);
!
!#ifdef UNICODE
!ImmEnumRegisterWord ImmEnumRegisterWordW
!ImmGetRegisterWordStyle ImmGetRegisterWordStyleW
!ImmUnregisterWord ImmUnregisterWordW
!ImmRegisterWord ImmRegisterWordW
!ImmInstallIME ImmInstallIMEW
!ImmIsUIMessage ImmIsUIMessageW
!ImmGetConversionList ImmGetConversionListW
!ImmEscape ImmEscapeW
!ImmConfigureIME ImmConfigureIMEW
!#ifndef NOGDI
!ImmSetCompositionFont ImmSetCompositionFontW
!ImmGetCompositionFont ImmGetCompositionFontW
!#endif
!ImmGetGuideLine ImmGetGuideLineW
!ImmGetCandidateList ImmGetCandidateListW
!ImmGetCandidateListCount ImmGetCandidateListCountW
!ImmSetCompositionString ImmSetCompositionStringW
!ImmGetCompositionString ImmGetCompositionStringW
!ImmGetDescription ImmGetDescriptionW
!ImmGetIMEFileName ImmGetIMEFileNameW
!ImmGetImeMenuItems ImmGetImeMenuItemsW
!#else
!ImmEnumRegisterWord ImmEnumRegisterWordA
!ImmGetRegisterWordStyle ImmGetRegisterWordStyleA
!ImmUnregisterWord ImmUnregisterWordA
!ImmRegisterWord ImmRegisterWordA
!ImmInstallIME ImmInstallIMEA
!ImmIsUIMessage ImmIsUIMessageA
!ImmGetConversionList ImmGetConversionListA
!ImmEscape ImmEscapeA
!ImmConfigureIME ImmConfigureIMEA
!#ifndef NOGDI
!ImmSetCompositionFont ImmSetCompositionFontA
!ImmGetCompositionFont ImmGetCompositionFontA
!#endif
!ImmGetGuideLine ImmGetGuideLineA
!ImmGetCandidateList ImmGetCandidateListA
!ImmGetCandidateListCount ImmGetCandidateListCountA
!ImmSetCompositionString ImmSetCompositionStringA
!ImmGetCompositionString ImmGetCompositionStringA
!ImmGetDescription ImmGetDescriptionA
!ImmGetIMEFileName ImmGetIMEFileNameA
!ImmGetImeMenuItems ImmGetImeMenuItemsW
!#endif
!#ifdef __cplusplus
!}
!#endif
!#endif
!© 2020 GitHub, Inc.
!Terms
!Privacy
!Security



S_OK                EQUATE(0)
!S_OK	Operation successful	0x00000000
!E_ABORT	Operation aborted	0x80004004
!E_ACCESSDENIED	General access denied error	0x80070005
!E_FAIL	Unspecified failure	0x80004005
!E_HANDLE	Handle that is not valid	0x80070006
!E_INVALIDARG	One or more arguments are not valid	0x80070057
!E_NOINTERFACE	No such interface supported	0x80004002
!E_NOTIMPL	Not implemented	0x80004001
!E_OUTOFMEMORY	Failed to allocate necessary memory	0x8007000E
!E_POINTER	Pointer that is not valid	0x80004003
!E_UNEXPECTED	Unexpected failure	0x8000FFFF
GLOBAL_ACCESS_MASK  equate(LONG)
GLOBAL_DELETE                      equate(00010000h)
GLOBAL_READ_CONTROL                equate(00020000h)
GLOBAL_WRITE_DAC                   equate(00040000h)
GLOBAL_WRITE_OWNER                 equate(00080000h)
GLOBAL_SYNCHRONIZE                 equate(00100000h)
GLOBAL_NOTSYNCHRONIZE              equate(0FFEFFFFFh)
GLOBAL_STANDARD_RIGHTS_REQUIRED    equate(000F0000h)
GLOBAL_STANDARD_RIGHTS_READ        equate(GLOBAL_READ_CONTROL)
GLOBAL_STANDARD_RIGHTS_WRITE       equate(GLOBAL_READ_CONTROL)
GLOBAL_STANDARD_RIGHTS_EXECUTE     equate(GLOBAL_READ_CONTROL)
GLOBAL_STANDARD_RIGHTS_ALL         equate(001F0000h)
GLOBAL_SPECIFIC_RIGHTS_ALL         equate(0000FFFFh)
GLOBAL_KEY_QUERY_VALUE             equate(0001h)
GLOBAL_KEY_SET_VALUE               equate(0002h)
GLOBAL_KEY_CREATE_SUB_KEY          equate(0004h)
GLOBAL_KEY_ENUMERATE_SUB_KEYS      equate(0008h)
GLOBAL_KEY_NOTIFY                  equate(0010h)
GLOBAL_KEY_CREATE_LINK             equate(0020h)
GLOBAL_KEY_READ                    equate(band(GLOBAL_STANDARD_RIGHTS_READ + GLOBAL_KEY_QUERY_VALUE + GLOBAL_KEY_ENUMERATE_SUB_KEYS + GLOBAL_KEY_NOTIFY, GLOBAL_NOTSYNCHRONIZE))
GLOBAL_KEY_WRITE                   equate(band(GLOBAL_STANDARD_RIGHTS_WRITE + GLOBAL_KEY_SET_VALUE + GLOBAL_KEY_CREATE_SUB_KEY, GLOBAL_NOTSYNCHRONIZE))
GLOBAL_KEY_EXECUTE                 equate(band(GLOBAL_KEY_READ,GLOBAL_NOTSYNCHRONIZE))
GLOBAL_KEY_ALL_ACCESS              equate(band(GLOBAL_STANDARD_RIGHTS_ALL + GLOBAL_KEY_QUERY_VALUE + GLOBAL_KEY_SET_VALUE + GLOBAL_KEY_CREATE_SUB_KEY + GLOBAL_KEY_ENUMERATE_SUB_KEYS + GLOBAL_KEY_NOTIFY + GLOBAL_KEY_CREATE_LINK, GLOBAL_NOTSYNCHRONIZE))
GLOBAL_HKEY_CLASSES_ROOT        equate(080000000h)
GLOBAL_HKEY_CURRENT_USER        equate(080000001h)
GLOBAL_HKEY_LOCAL_MACHINE       equate(080000002h)
GLOBAL_HKEY_USERS               equate(080000003h)
GLOBAL_HKEY_PERFORMANCE_DATA    equate(080000004h)
GLOBAL_HKEY_PERFORMANCE_TEXT    equate(080000050h)
GLOBAL_HKEY_PERFORMANCE_NLSTEXT equate(080000060h)
GLOBAL_HKEY_CURRENT_CONFIG      equate(080000005h)
GLOBAL_HKEY_DYN_DATA            equate(080000006h)
!RDW_ERASE EQUATE(4)
!RDW_FRAME EQUATE(1024)
!RDW_INTERNALPAINT EQUATE(2)
!RDW_INVALIDATE EQUATE(1)
!RDW_NOERASE EQUATE(32)
!RDW_NOFRAME EQUATE(2048)
!RDW_NOINTERNALPAINT EQUATE(16)
!RDW_VALIDATE EQUATE(8)
!RDW_ERASENOW EQUATE(512)
!RDW_UPDATENOW EQUATE(256)
!RDW_ALLCHILDREN EQUATE(128)
!RDW_NOCHILDREN EQUATE(64)
!!DWMAttr_NCRENDERINGENABLED  Byte !(1)
!!DWMAttr_NCRENDERINGPOLICY  Byte !(2)
!!DWMAttr_TRANSITIONSFORCEDISABLED  Byte !(3)
!!DWMAttr_ALLOWNCPAINT  Byte !(4)
!!DWMAttr_CAPTIONBUTTONBOUNDS  Byte !(5)
!!DWMAttr_NONCLIENTRTLLAYOUT  Byte !(6)
!!DWMAttr_FORCEICONICREPRESENTATION  Byte !(7)
!!DWMAttr_FLIP3DPOLICY  Byte !(8)
!!DWMAttr_EXTENDEDFRAMEBOUNDS Byte !(9)
!!DWMAttr_HASICONICBITMAP Byte !(10)
!!DWMAttr_DISALLOWPEEK Byte !(11)
!!DWMAttr_EXCLUDEDFROMPEEK  Byte !(12)
!!DWMAttr_CLOAK  Byte !(13)
!!DWMAttr_CLOAKED  Byte !(14)
!!DWMAttr_FREEZEREPRESENTATION  Byte !(15)
!!DWMAttr_LAST  Byte !(16)
!!enum DWMWINDOWATTRIBUTE {
DWMWA_NCRENDERING_ENABLED  equate(1)
DWMWA_NCRENDERING_POLICY  equate(2)
DWMWA_TRANSITIONS_FORCEDISABLED  equate(3)
DWMWA_ALLOW_NCPAINT  equate(4)
DWMWA_CAPTION_BUTTON_BOUNDS  equate(5)
DWMWA_NONCLIENT_RTL_LAYOUT  equate(6)
DWMWA_FORCE_ICONIC_REPRESENTATION  equate(7)
DWMWA_FLIP3D_POLICY  equate(8)
DWMWA_EXTENDED_FRAME_BOUNDS equate(9)
DWMWA_HAS_ICONIC_BITMAP equate(10)
DWMWA_DISALLOW_PEEK equate(11)
DWMWA_EXCLUDED_FROM_PEEK  equate(12)
DWMWA_CLOAK  equate(13)
DWMWA_CLOAKED  equate(14)
DWMWA_FREEZE_REPRESENTATION  equate(15)
DWMWA_LAST          equate(16)

RIDI_DEVICENAME         EQUATE(020000007h)
RIDI_DEVICEINFO         equate(536870923) !
RIDI_PREPARSEDDATA  EQUATE(020000005H)

RIDEV_REMOVE            EQUATE(01H)
RIDEV_EXCLUDE           EQUATE(010H) 
RIDEV_PAGEONLY          EQUATE(020H) 
RIDEV_NOLEGACY          EQUATE(030H) 
RIDEV_INPUTSINK         EQUATE(0100H) 
RIDEV_CAPTUREMOUSE      EQUATE(0200H)  !!// effective when mouse nolegacy is specified, otherwise it would be an error 
RIDEV_NOHOTKEYS         EQUATE(0200H)  !!// effective for keyboard. 
RIDEV_APPKEYS           EQUATE(0400H)  !!// effective for keyboard. 
RIDEV_EXMODEMASK        EQUATE(0F0h) 


RIM_TYPEMOUSE       EQUATE(00H) 
RIM_TYPEKEYBOARD    EQUATE(01H) 
RIM_TYPEHID         EQUATE(02H) 

RI_MOUSE_LEFT_BUTTON_DOWN   EQUATE(0001H) !  !!// Left Button changed to down. 
RI_MOUSE_LEFT_BUTTON_UP     EQUATE(0002H) !  !!// Left Button changed to up. 
RI_MOUSE_RIGHT_BUTTON_DOWN  EQUATE(0004H) !  !!// Right Button changed to down. 
RI_MOUSE_RIGHT_BUTTON_UP    EQUATE(0008H) !  !!// Right Button changed to up. 
RI_MOUSE_MIDDLE_BUTTON_DOWN EQUATE(0010H) !  !!// Middle Button changed to down. 
RI_MOUSE_MIDDLE_BUTTON_UP   EQUATE(0020H) !  !!// Middle Button changed to up. 
 
!RI_MOUSE_BUTTON_1_DOWN      EQUATE(RI_MOUSE_LEFT_BUTTON_DOWNH) ! 
!RI_MOUSE_BUTTON_1_UP        EQUATE(RI_MOUSE_LEFT_BUTTON_UPH) ! 
!RI_MOUSE_BUTTON_2_DOWN      EQUATE(RI_MOUSE_RIGHT_BUTTON_DOWNH) ! 
!RI_MOUSE_BUTTON_2_UP        EQUATE(RI_MOUSE_RIGHT_BUTTON_UPH) ! 
!RI_MOUSE_BUTTON_3_DOWN      EQUATE(RI_MOUSE_MIDDLE_BUTTON_DOWNH) ! 
!RI_MOUSE_BUTTON_3_UP        EQUATE(RI_MOUSE_MIDDLE_BUTTON_UPH) ! 
 
RI_MOUSE_BUTTON_4_DOWN      EQUATE(0040H) ! 
RI_MOUSE_BUTTON_4_UP        EQUATE(0080H) ! 
RI_MOUSE_BUTTON_5_DOWN      EQUATE(0100H) !
RI_MOUSE_BUTTON_5_UP        EQUATE(0200H) ! 
 
!/* 
! * If usButtonFlags has RI_MOUSE_WHEEL, the wheel delta is stored in usButtonData. 
! * Take it as a signed value. 
! */ 
RI_MOUSE_WHEEL              EQUATE(0400H) ! 
 
!/* 
! * Define the mouse indicator flags. 
! */ 
MOUSE_MOVE_RELATIVE         EQUATE(00H) ! 
MOUSE_MOVE_ABSOLUTE         EQUATE(01H) ! 
MOUSE_VIRTUAL_DESKTOP    EQUATE(02H) !  !// the coordinates are mapped to the virtual desktop 
MOUSE_ATTRIBUTES_CHANGED EQUATE(04H) !  !// requery for mouse attributes 
 
GCL_STYLE equate(-26)

!GWL_STYLE   equate(-16)
!GWL_EXSTYLE   equate(-20)
!! WM MESSAGES
!
!WM_ACTIVATE equate(6)
!WM_ACTIVATEAPP equate(28)
!WM_AFXFIRST equate(864)
!WM_AFXLAST equate(895)
!WM_APP equate(32768)
!WM_APPCOMMAND equate(793)
!WM_ASKCBFORMATNAME equate(780)
!WM_CANCELJOURNAL equate(75)
!WM_CANCELMODE equate(31)
!WM_CAPTURECHANGED equate(533)
!WM_CHANGECBCHAIN equate(781)
!WM_CHANGEUISTATE equate(295)
!!WM_CHAR equate(128)
!!WM_CHAR equate(258)
!WM_CHAR equate(6)
!WM_CHARTOITEM equate(47)
!WM_CHILDACTIVATE equate(34)
!WM_CLEAR equate(771)
!WM_CLIPBOARDUPDATE equate(797)
!WM_CLOSE equate(16)
!WM_COMMAND equate(273)
!WM_COMMNOTIFY equate(68)
!WM_COMPACTING equate(65)
!WM_COMPAREITEM equate(57)
!WM_CONTEXTMENU equate(123)
!WM_COPY equate(769)
!WM_COPYDATA equate(74)
!WM_CREATE equate(1)
!WM_CTLCOLORBTN equate(309)
!WM_CTLCOLORDLG equate(310)
!WM_CTLCOLOREDIT equate(307)
!WM_CTLCOLORLISTBOX equate(308)
!WM_CTLCOLORMSGBOX equate(306)
!WM_CTLCOLORSCROLLBAR equate(311)
!WM_CTLCOLORSTATIC equate(312)
!WM_CUT equate(768)
!WM_DEADCHAR equate(259)
!WM_DELETEITEM equate(45)
!WM_DESTROY equate(2)
!WM_DESTROYCLIPBOARD equate(775)
!WM_DEVICECHANGE equate(537)
!WM_DEVMODECHANGE equate(27)
!WM_DISPLAYCHANGE equate(126)
!WM_DRAWCLIPBOARD equate(776)
!WM_DRAWITEM equate(43)
!WM_DROPFILES equate(563)
WM_DWMCOLORIZATIONCOLORCHANGED equate(800)
WM_DWMCOMPOSITIONCHANGED equate(798)
!WM_DWMNCRENDERINGCHANGED equate(799)
!WM_DWMSENDICONICLIVEPREVIEWBITMAP equate(806)
!WM_DWMSENDICONICTHUMBNAIL equate(803)
!WM_DWMWINDOWMAXIMIZEDCHANGE equate(801)
!WM_ENABLE equate(10)
!WM_ENDSESSION equate(22)
!WM_ENTERIDLE equate(289)
!WM_ENTERMENULOOP equate(529)
!WM_ENTERSIZEMOVE equate(561)
!WM_ERASEBACKGROUND equate(4)
!WM_ERASEBKGND equate(20)
!WM_EXITMENULOOP equate(530)
!WM_EXITSIZEMOVE equate(562)
!WM_FONTCHANGE equate(29)
!WM_GESTURE equate(281)
!WM_GESTURENOTIFY equate(282)
!WM_GETDLGCODE equate(135)
!WM_GETFONT equate(49)
!WM_GETHOTKEY equate(51)
!WM_GETICON equate(127)
!WM_GETMINMAXINFO equate(36)
!WM_GETOBJECT equate(61)
!WM_GETTEXT equate(13)
!WM_GETTEXTLENGTH equate(14)
!WM_GETTITLEBARINFOEX equate(831)
!WM_HANDHELDFIRST equate(856)
!WM_HANDHELDLAST equate(863)
!WM_HELP equate(83)
!WM_HOTKEY equate(786)
!WM_HSCROLL equate(276)
!WM_HSCROLLCLIPBOARD equate(782)
!WM_ICONERASEBKGND equate(39)
!WM_IME_CHAR equate(646)
!WM_IME_COMPOSITION equate(271)
!WM_IME_COMPOSITIONFULL equate(644)
!WM_IME_CONTROL equate(643)
!WM_IME_ENDCOMPOSITION equate(270)
!WM_IME_KEYDOWN equate(656)
!WM_IME_KEYLAST equate(271)
!WM_IME_KEYUP equate(657)
WM_IME_NOTIFY equate(642)
!WM_IME_REQUEST equate(648)
!WM_IME_SELECT equate(645)
!WM_IME_SETCONTEXT equate(641)
!WM_IME_STARTCOMPOSITION equate(269)
!WM_INITDIALOG equate(272)
!WM_INITMENU equate(278)
!WM_INITMENUPOPUP equate(279)
WM_INPUT equate(255)
!WM_INPUTLANGCHANGE equate(81)
!WM_INPUTLANGCHANGEREQUEST equate(80)
!WM_INPUT_DEVICE_CHANGE equate(254)
!WM_KEYDOWN equate(256)
!WM_KEYFIRST equate(256)
!!WM_KEYLAST equate(264)
!WM_KEYLAST equate(265)
!WM_KEYUP equate(257)
!WM_KILLFOCUS equate(8)
!WM_LBUTTONDBLCLK equate(515)
!WM_LBUTTONDOWN equate(513)
!WM_LBUTTONUP equate(514)
!WM_MBUTTONDBLCLK equate(521)
!WM_MBUTTONDOWN equate(519)
!WM_MBUTTONUP equate(520)
!WM_MDIACTIVATE equate(546)
!WM_MDICASCADE equate(551)
!WM_MDICREATE equate(544)
!WM_MDIDESTROY equate(545)
!WM_MDIGETACTIVE equate(553)
!WM_MDIICONARRANGE equate(552)
!WM_MDIMAXIMIZE equate(549)
!WM_MDINEXT equate(548)
!WM_MDIREFRESHMENU equate(564)
!WM_MDIRESTORE equate(547)
!WM_MDISETMENU equate(560)
!WM_MDITILE equate(550)
!WM_MEASUREITEM equate(44)
!WM_MENUCHAR equate(288)
!WM_MENUCOMMAND equate(294)
!WM_MENUDRAG equate(291)
!WM_MENUGETOBJECT equate(292)
!WM_MENURBUTTONUP equate(290)
!WM_MENUSELECT equate(287)
!WM_MOUSEACTIVATE equate(33)
!WM_MOUSEFIRST equate(512)
!WM_MOUSEHOVER equate(673)
!WM_MOUSEHWHEEL equate(526)
!!WM_MOUSELAST equate(521)
!WM_MOUSELAST equate(522)
!!WM_MOUSELAST equate(525)
!!WM_MOUSELAST equate(526)
WM_MOUSELEAVE equate(675)
!WM_MOUSEMOVE equate(512)
!WM_MOUSEWHEEL equate(522)
!WM_MOVE equate(3)
WM_MOVING equate(534)
!WM_NCACTIVATE equate(134)
!WM_NCCALCSIZE equate(131)
!!WM_NCCALCSIZE equate(32)
!WM_NCCREATE equate(129)
!WM_NCDESTROY equate(130)
!WM_NCHITTEST equate(132)
!WM_NCLBUTTONDBLCLK equate(163)
!WM_NCLBUTTONDOWN equate(161)
!WM_NCLBUTTONUP equate(162)
!WM_NCMBUTTONDBLCLK equate(169)
!WM_NCMBUTTONDOWN equate(167)
!WM_NCMBUTTONUP equate(168)
!WM_NCMOUSEHOVER equate(672)
!WM_NCMOUSELEAVE equate(674)
!WM_NCMOUSEMOVE equate(160)
!WM_NCPAINT equate(133)
!WM_NCRBUTTONDBLCLK equate(166)
!WM_NCRBUTTONDOWN equate(164)
!WM_NCRBUTTONUP equate(165)
!WM_NCXBUTTONDBLCLK equate(173)
!WM_NCXBUTTONDOWN equate(171)
!WM_NCXBUTTONUP equate(172)
!WM_NEXTDLGCTL equate(40)
!WM_NEXTMENU equate(531)
!WM_NOTIFY equate(78)
!WM_NOTIFYFORMAT equate(85)
!WM_NULL equate(0)
!WM_PAINT equate(15)
!WM_PAINTCLIPBOARD equate(777)
!WM_PAINTICON equate(38)
!WM_PALETTECHANGED equate(785)
!WM_PALETTEISCHANGING equate(784)
!WM_PARENTNOTIFY equate(528)
!WM_PASTE equate(770)
!WM_PENWINFIRST equate(896)
!WM_PENWINLAST equate(911)
!WM_POWER equate(72)
!WM_POWERBROADCAST equate(536)
!WM_PRINT equate(791)
!WM_PRINTCLIENT equate(792)
!WM_QUERYDRAGICON equate(55)
!WM_QUERYENDSESSION equate(17)
!WM_QUERYNEWPALETTE equate(783)
!WM_QUERYOPEN equate(19)
!WM_QUERYUISTATE equate(297)
!WM_QUEUESYNC equate(35)
!WM_QUIT equate(18)
!WM_RBUTTONDBLCLK equate(518)
!WM_RBUTTONDOWN equate(516)
!WM_RBUTTONUP equate(517)
!WM_RENDERALLFORMATS equate(774)
!WM_RENDERFORMAT equate(773)
!WM_SETCURSOR equate(32)
!WM_SETFOCUS equate(7)
!WM_SETFONT equate(48)
!WM_SETHOTKEY equate(50)
!WM_SETICON equate(128)
!WM_SETREDRAW equate(11)
!WM_SETTEXT equate(12)
!WM_SHOWWINDOW equate(24)
!WM_SIZE equate(5)
!WM_SIZECLIPBOARD equate(779)
WM_SIZING equate(532)
!WM_SPOOLERSTATUS equate(42)
!WM_STYLECHANGED equate(125)
!WM_STYLECHANGING equate(124)
!WM_SYNCPAINT equate(136)
!WM_SYSCHAR equate(262)
!WM_SYSCOLORCHANGE equate(21)
!WM_SYSCOMMAND equate(274)
!WM_SYSDEADCHAR equate(263)
!WM_SYSKEYDOWN equate(260)
!WM_SYSKEYUP equate(261)
!WM_TABLET_FIRST equate(704)
!WM_TABLET_LAST equate(735)
!WM_TCARD equate(82)
!WM_THEMECHANGED equate(794)
!WM_TIMECHANGE equate(30)
!WM_TIMER equate(275)
!WM_TOUCH equate(576)
!WM_UNDO equate(772)
!WM_UNICHAR equate(265)
!WM_UNINITMENUPOPUP equate(293)
!WM_UPDATEUISTATE equate(296)
!WM_USER equate(1024)
!WM_USERCHANGED equate(84)
!WM_VKEYTOITEM equate(46)
!WM_VSCROLL equate(277)
!WM_VSCROLLCLIPBOARD equate(778)
!WM_WINDOWPOSCHANGED equate(71)
!!WM_WINDOWPOSCHANGING equate(1024)
!WM_WINDOWPOSCHANGING equate(70)
!WM_WININICHANGE equate(26)
!WM_WTSSESSION_CHANGE equate(689)
!WM_XBUTTONDBLCLK equate(525)
!WM_XBUTTONDOWN equate(523)
!WM_XBUTTONUP equate(524)
!WIN32_ACM_OPENA    EQUATE(1124) ! 0464
!WIN32_ACM_OPENW    EQUATE(1127) ! 0467
!WIN32_ACM_PLAY    EQUATE(1125) ! 0465
!WIN32_ACM_STOP    EQUATE(1126) ! 0466
!WIN32_BFFM_ENABLEOK    EQUATE(1125) ! 0465
!WIN32_BFFM_SETSELECTIONA    EQUATE(1126) ! 0466
!WIN32_BFFM_SETSELECTIONW    EQUATE(1127) ! 0467
!WIN32_BFFM_SETSTATUSTEXTA    EQUATE(1124) ! 0464
!WIN32_BFFM_SETSTATUSTEXTW    EQUATE(1128) ! 0468
!WIN32_BM_CLICK    EQUATE(245) ! 00f5
!WIN32_BM_GETCHECK    EQUATE(240) ! 00f0
!WIN32_BM_GETIMAGE    EQUATE(246) ! 00f6
!WIN32_BM_GETSTATE    EQUATE(242) ! 00f2
!WIN32_BM_SETCHECK    EQUATE(241) ! 00f1
!WIN32_BM_SETDONTCLICK    EQUATE(248) ! 00f8
!WIN32_BM_SETIMAGE    EQUATE(247) ! 00f7
!WIN32_BM_SETSTATE    EQUATE(243) ! 00f3
!WIN32_BM_SETSTYLE    EQUATE(244) ! 00f4
!WIN32_CBEM_GETCOMBOCONTROL    EQUATE(1030) ! 0406
!WIN32_CBEM_GETEDITCONTROL    EQUATE(1031) ! 0407
!WIN32_CBEM_GETEXSTYLE    EQUATE(1033) ! 0409
!WIN32_CBEM_GETEXTENDEDSTYLE    EQUATE(1033) ! 0409
!WIN32_CBEM_GETIMAGELIST    EQUATE(1027) ! 0403
!WIN32_CBEM_GETITEMA    EQUATE(1028) ! 0404
!WIN32_CBEM_GETITEMW    EQUATE(1037) ! 040d
!WIN32_CBEM_HASEDITCHANGED    EQUATE(1034) ! 040a
!WIN32_CBEM_INSERTITEMA    EQUATE(1025) ! 0401
!WIN32_CBEM_INSERTITEMW    EQUATE(1035) ! 040b
!WIN32_CBEM_SETEXSTYLE    EQUATE(1032) ! 0408
!WIN32_CBEM_SETEXTENDEDSTYLE    EQUATE(1038) ! 040e
!WIN32_CBEM_SETIMAGELIST    EQUATE(1026) ! 0402
!WIN32_CBEM_SETITEMA    EQUATE(1029) ! 0405
!WIN32_CBEM_SETITEMW    EQUATE(1036) ! 040c
!WIN32_CDM_FIRST    EQUATE(1124) ! 0464
!WIN32_CDM_GETFILEPATH    EQUATE(1125) ! 0465
!WIN32_CDM_GETFOLDERIDLIST    EQUATE(1127) ! 0467
!WIN32_CDM_GETFOLDERPATH    EQUATE(1126) ! 0466
!WIN32_CDM_GETSPEC    EQUATE(1124) ! 0464
!WIN32_CDM_HIDECONTROL    EQUATE(1129) ! 0469
!WIN32_CDM_LAST    EQUATE(1224) ! 04c8
!WIN32_CDM_SETCONTROLTEXT    EQUATE(1128) ! 0468
!WIN32_CDM_SETDEFEXT    EQUATE(1130) ! 046a
!WIN32_DDM_BEGIN    EQUATE(1027) ! 0403
!WIN32_DDM_CLOSE    EQUATE(1026) ! 0402
!WIN32_DDM_DRAW    EQUATE(1025) ! 0401
!WIN32_DDM_END    EQUATE(1028) ! 0404
!WIN32_DDM_SETFMT    EQUATE(1024) ! 0400
!WIN32_DL_BEGINDRAG    EQUATE(1157) ! 0485
!WIN32_DL_CANCELDRAG    EQUATE(1160) ! 0488
!WIN32_DL_DRAGGING    EQUATE(1158) ! 0486
!WIN32_DL_DROPPED    EQUATE(1159) ! 0487
!WIN32_DM_GETDEFID    EQUATE(1024) ! 0400
!WIN32_DM_REPOSITION    EQUATE(1026) ! 0402
!WIN32_DM_SETDEFID    EQUATE(1025) ! 0401
!WIN32_EM_AUTOURLDETECT    EQUATE(1115) ! 045b
!WIN32_EM_CANPASTE    EQUATE(1074) ! 0432
!WIN32_EM_CANREDO    EQUATE(1109) ! 0455
!WIN32_EM_CANUNDO    EQUATE(198) ! 00c6
!WIN32_EM_CHARFROMPOS    EQUATE(215) ! 00d7
!WIN32_EM_CONVPOSITION    EQUATE(1132) ! 046c
!!WIN32_EM_CONVPOSITION    EQUATE(1132) ! 046c
!WIN32_EM_DISPLAYBAND    EQUATE(1075) ! 0433
!WIN32_EM_EMPTYUNDOBUFFER    EQUATE(205) ! 00cd
!WIN32_EM_EXGETSEL    EQUATE(1076) ! 0434
!WIN32_EM_EXLIMITTEXT    EQUATE(1077) ! 0435
!WIN32_EM_EXLINEFROMCHAR    EQUATE(1078) ! 0436
!WIN32_EM_EXSETSEL    EQUATE(1079) ! 0437
!WIN32_EM_FINDTEXT    EQUATE(1080) ! 0438
!WIN32_EM_FINDTEXTEX    EQUATE(1103) ! 044f
!WIN32_EM_FINDTEXTEXW    EQUATE(1148) ! 047c
!WIN32_EM_FINDTEXTW    EQUATE(1147) ! 047b
!WIN32_EM_FINDWORDBREAK    EQUATE(1100) ! 044c
!WIN32_EM_FMTLINES    EQUATE(200) ! 00c8
!WIN32_EM_FORMATRANGE    EQUATE(1081) ! 0439
!WIN32_EM_GETAUTOURLDETECT    EQUATE(1116) ! 045c
!WIN32_EM_GETBIDIOPTIONS    EQUATE(1225) ! 04c9
!WIN32_EM_GETCHARFORMAT    EQUATE(1082) ! 043a
!WIN32_EM_GETCTFMODEBIAS    EQUATE(1261) ! 04ed
!WIN32_EM_GETCTFOPENSTATUS    EQUATE(1264) ! 04f0
!WIN32_EM_GETEDITSTYLE    EQUATE(1229) ! 04cd
!WIN32_EM_GETEVENTMASK    EQUATE(1083) ! 043b
!WIN32_EM_GETFIRSTVISIBLELINE    EQUATE(206) ! 00ce
!WIN32_EM_GETHANDLE    EQUATE(191) ! 00bd
!WIN32_EM_GETHYPHENATEINFO    EQUATE(1254) ! 04e6
!WIN32_EM_GETIMECOLOR    EQUATE(1129) ! 0469
!WIN32_EM_GETIMECOMPMODE    EQUATE(1146) ! 047a
!WIN32_EM_GETIMECOMPTEXT    EQUATE(1266) ! 04f2
!WIN32_EM_GETIMEMODEBIAS    EQUATE(1151) ! 047f
!WIN32_EM_GETIMEOPTIONS    EQUATE(1131) ! 046b
!WIN32_EM_GETIMEPROPERTY    EQUATE(1268) ! 04f4
!WIN32_EM_GETIMESTATUS    EQUATE(217) ! 00d9
!WIN32_EM_GETLANGOPTIONS    EQUATE(1145) ! 0479
!WIN32_EM_GETLIMITTEXT    EQUATE(213) ! 00d5
!WIN32_EM_GETLINE    EQUATE(196) ! 00c4
!WIN32_EM_GETLINECOUNT    EQUATE(188) ! 00ba
!WIN32_EM_GETMARGINS    EQUATE(212) ! 00d4
!WIN32_EM_GETMODIFY    EQUATE(185) ! 00b8
!WIN32_EM_GETOLEINTERFACE    EQUATE(1084) ! 043c
!WIN32_EM_GETOPTIONS    EQUATE(1102) ! 044e
!WIN32_EM_GETPAGE    EQUATE(1252) ! 04e4
!WIN32_EM_GETPAGEROTATE    EQUATE(1259) ! 04eb
!WIN32_EM_GETPARAFORMAT    EQUATE(1085) ! 043d
!WIN32_EM_GETPASSWORDCHAR    EQUATE(210) ! 00d2
!WIN32_EM_GETPUNCTUATION    EQUATE(1125) ! 0465
!WIN32_EM_GETQUERYRTFOBJ    EQUATE(1293) ! 050d
!WIN32_EM_GETRECT    EQUATE(178) ! 00b2
!WIN32_EM_GETREDONAME    EQUATE(1111) ! 0457
!WIN32_EM_GETSCROLLPOS    EQUATE(1245) ! 04dd
!WIN32_EM_GETSEL    EQUATE(176) ! 00b0
!WIN32_EM_GETSELTEXT    EQUATE(1086) ! 043e
!WIN32_EM_GETTEXTEX    EQUATE(1118) ! 045e
!WIN32_EM_GETTEXTLENGTHEX    EQUATE(1119) ! 045f
!WIN32_EM_GETTEXTMODE    EQUATE(1114) ! 045a
!WIN32_EM_GETTEXTRANGE    EQUATE(1099) ! 044b
!WIN32_EM_GETTHUMB    EQUATE(192) ! 00be
!WIN32_EM_GETTYPOGRAPHYOPTIONS    EQUATE(1227) ! 04cb
!WIN32_EM_GETUNDONAME    EQUATE(1110) ! 0456
!WIN32_EM_GETVIEWKIND    EQUATE(1250) ! 04e2
!WIN32_EM_GETWORDBREAKPROC    EQUATE(209) ! 00d1
!WIN32_EM_GETWORDBREAKPROCEX    EQUATE(1104) ! 0450
!WIN32_EM_GETWORDWRAPMODE    EQUATE(1127) ! 0467
!WIN32_EM_GETZOOM    EQUATE(1248) ! 04e0
!WIN32_EM_HIDESELECTION    EQUATE(1087) ! 043f
!WIN32_EM_ISIME    EQUATE(1267) ! 04f3
!WIN32_EM_LIMITTEXT    EQUATE(197) ! 00c5
!WIN32_EM_LINEFROMCHAR    EQUATE(201) ! 00c9
!WIN32_EM_LINEINDEX    EQUATE(189) ! 00bb
!WIN32_EM_LINELENGTH    EQUATE(193) ! 00c1
!WIN32_EM_LINESCROLL    EQUATE(182) ! 00b6
!WIN32_EM_OUTLINE    EQUATE(1244) ! 04dc
!WIN32_EM_PASTESPECIAL    EQUATE(1088) ! 0440
!WIN32_EM_POSFROMCHAR    EQUATE(214) ! 00d6
!WIN32_EM_RECONVERSION    EQUATE(1149) ! 047d
!WIN32_EM_REDO    EQUATE(1108) ! 0454
!WIN32_EM_REPLACESEL    EQUATE(194) ! 00c2
!WIN32_EM_REQUESTRESIZE    EQUATE(1089) ! 0441
!WIN32_EM_SCROLL    EQUATE(181) ! 00b5
!WIN32_EM_SCROLLCARET    EQUATE(183) ! 00b7
!WIN32_EM_SELECTIONTYPE    EQUATE(1090) ! 0442
!WIN32_EM_SETBIDIOPTIONS    EQUATE(1224) ! 04c8
!WIN32_EM_SETBKGNDCOLOR    EQUATE(1091) ! 0443
!WIN32_EM_SETCHARFORMAT    EQUATE(1092) ! 0444
!WIN32_EM_SETCTFMODEBIAS    EQUATE(1262) ! 04ee
!WIN32_EM_SETCTFOPENSTATUS    EQUATE(1265) ! 04f1
!WIN32_EM_SETEDITSTYLE    EQUATE(1228) ! 04cc
!WIN32_EM_SETEVENTMASK    EQUATE(1093) ! 0445
!WIN32_EM_SETFONT    EQUATE(195) ! 00c3
!WIN32_EM_SETFONTSIZE    EQUATE(1247) ! 04df
!WIN32_EM_SETHANDLE    EQUATE(190) ! 00bc
!WIN32_EM_SETHYPHENATEINFO    EQUATE(1255) ! 04e7
!WIN32_EM_SETIMECOLOR    EQUATE(1128) ! 0468
!WIN32_EM_SETIMEMODEBIAS    EQUATE(1150) ! 047e
!WIN32_EM_SETIMEOPTIONS    EQUATE(1130) ! 046a
!WIN32_EM_SETIMESTATUS    EQUATE(216) ! 00d8
!WIN32_EM_SETLANGOPTIONS    EQUATE(1144) ! 0478
!WIN32_EM_SETLIMITTEXT    EQUATE(197) ! 00c5
!WIN32_EM_SETMARGINS    EQUATE(211) ! 00d3
!WIN32_EM_SETMODIFY    EQUATE(187) ! 00b9
!WIN32_EM_SETOLECALLBACK    EQUATE(1094) ! 0446
!WIN32_EM_SETOPTIONS    EQUATE(1101) ! 044d
!WIN32_EM_SETPAGE    EQUATE(1253) ! 04e5
!WIN32_EM_SETPAGEROTATE    EQUATE(1260) ! 04ec
!WIN32_EM_SETPALETTE    EQUATE(1117) ! 045d
!WIN32_EM_SETPARAFORMAT    EQUATE(1095) ! 0447
!WIN32_EM_SETPASSWORDCHAR    EQUATE(204) ! 00cc
!WIN32_EM_SETPUNCTUATION    EQUATE(1124) ! 0464
!WIN32_EM_SETQUERYRTFOBJ    EQUATE(1294) ! 050e
!WIN32_EM_SETREADONLY    EQUATE(207) ! 00cf
!WIN32_EM_SETRECT    EQUATE(179) ! 00b3
!WIN32_EM_SETRECTNP    EQUATE(180) ! 00b4
!WIN32_EM_SETSCROLLPOS    EQUATE(1246) ! 04de
!!WIN32_EM_SETSCROLLPOS    EQUATE(1246) ! 04de
!WIN32_EM_SETSEL    EQUATE(177) ! 00b1
!WIN32_EM_SETTABSTOPS    EQUATE(203) ! 00cb
!WIN32_EM_SETTARGETDEVICE    EQUATE(1096) ! 0448
!WIN32_EM_SETTEXTEX    EQUATE(1121) ! 0461
!WIN32_EM_SETTEXTMODE    EQUATE(1113) ! 0459
!WIN32_EM_SETTYPOGRAPHYOPTIONS    EQUATE(1226) ! 04ca
!WIN32_EM_SETUNDOLIMIT    EQUATE(1106) ! 0452
!WIN32_EM_SETVIEWKIND    EQUATE(1251) ! 04e3
!WIN32_EM_SETWORDBREAK    EQUATE(202) ! 00ca
!WIN32_EM_SETWORDBREAKPROC    EQUATE(209) ! 00d0
!WIN32_EM_SETWORDBREAKPROCEX    EQUATE(1105) ! 0451
!WIN32_EM_SETWORDWRAPMODE    EQUATE(1126) ! 0466
!WIN32_EM_SETZOOM    EQUATE(1249) ! 04e1
!WIN32_EM_SHOWSCROLLBAR    EQUATE(1120) ! 0460
!WIN32_EM_STOPGROUPTYPING    EQUATE(1112) ! 0458
!WIN32_EM_STREAMIN    EQUATE(1097) ! 0449
!WIN32_EM_STREAMOUT    EQUATE(1098) ! 044a
!WIN32_EM_UNDO    EQUATE(199) ! 00c7
!WIN32_FM_GETDRIVEINFOA    EQUATE(1537) ! 0601
!WIN32_FM_GETDRIVEINFOW    EQUATE(1553) ! 0611
!WIN32_FM_GETFILESELA    EQUATE(1540) ! 0604
!WIN32_FM_GETFILESELLFNA    EQUATE(1541) ! 0605
!WIN32_FM_GETFILESELLFNW    EQUATE(1557) ! 0615
!WIN32_FM_GETFILESELW    EQUATE(1556) ! 0614
!WIN32_FM_GETFOCUS    EQUATE(1536) ! 0600
!WIN32_FM_GETSELCOUNT    EQUATE(1538) ! 0602
!WIN32_FM_GETSELCOUNTLFN    EQUATE(1539) ! 0603
!WIN32_FM_REFRESH_WINDOWS    EQUATE(1542) ! 0606
!WIN32_FM_RELOAD_EXTENSIONS    EQUATE(1543) ! 0607
!WIN32_HKM_GETHOTKEY    EQUATE(1026) ! 0402
!WIN32_HKM_SETHOTKEY    EQUATE(1025) ! 0401
!WIN32_HKM_SETRULES    EQUATE(1027) ! 0403
!WIN32_IE_DOCOMMAND    EQUATE(1224) ! 04c8
!WIN32_IE_GETAPPDATA    EQUATE(1208) ! 04b8
!WIN32_IE_GETBKGND    EQUATE(1180) ! 049c
!WIN32_IE_GETCOMMAND    EQUATE(1225) ! 04c9
!WIN32_IE_GETCOUNT    EQUATE(1226) ! 04ca
!WIN32_IE_GETDRAWOPTS    EQUATE(1210) ! 04ba
!WIN32_IE_GETERASERTIP    EQUATE(1178) ! 049a
!WIN32_IE_GETFORMAT    EQUATE(1212) ! 04bc
!WIN32_IE_GETGESTURE    EQUATE(1227) ! 04cb
!WIN32_IE_GETGRIDORIGIN    EQUATE(1182) ! 049e
!WIN32_IE_GETGRIDPEN    EQUATE(1184) ! 04a0
!WIN32_IE_GETGRIDSIZE    EQUATE(1186) ! 04a2
!WIN32_IE_GETINK    EQUATE(1174) ! 0496
!WIN32_IE_GETINKINPUT    EQUATE(1214) ! 04be
!WIN32_IE_GETINKRECT    EQUATE(1190) ! 04a6
!WIN32_IE_GETMENU    EQUATE(1228) ! 04cc
!WIN32_IE_GETMODE    EQUATE(1188) ! 04a4
!WIN32_IE_GETNOTIFY    EQUATE(1216) ! 04c0
!WIN32_IE_GETPAINTDC    EQUATE(1229) ! 04cd
!WIN32_IE_GETPDEVENT    EQUATE(1230) ! 04ce
!WIN32_IE_GETPENTIP    EQUATE(1176) ! 0498
!WIN32_IE_GETRECOG    EQUATE(1218) ! 04c2
!WIN32_IE_GETSECURITY    EQUATE(1220) ! 04c4
!WIN32_IE_GETSEL    EQUATE(1222) ! 04c6
!WIN32_IE_GETSELCOUNT    EQUATE(1231) ! 04cf
!WIN32_IE_GETSELITEMS    EQUATE(1232) ! 04d0
!WIN32_IE_GETSTYLE    EQUATE(1233) ! 04d1
!WIN32_IE_MSGFIRST    EQUATE(1174) ! 0496
!WIN32_IE_SETAPPDATA    EQUATE(1209) ! 04b9
!WIN32_IE_SETBKGND    EQUATE(1181) ! 049d
!WIN32_IE_SETDRAWOPTS    EQUATE(1211) ! 04bb
!WIN32_IE_SETERASERTIP    EQUATE(1179) ! 049b
!WIN32_IE_SETFORMAT    EQUATE(1213) ! 04bd
!WIN32_IE_SETGRIDORIGIN    EQUATE(1183) ! 049f
!WIN32_IE_SETGRIDPEN    EQUATE(1185) ! 04a1
!WIN32_IE_SETGRIDSIZE    EQUATE(1187) ! 04a3
!WIN32_IE_SETINK    EQUATE(1175) ! 0497
!WIN32_IE_SETINKINPUT    EQUATE(1215) ! 04bf
!WIN32_IE_SETMODE    EQUATE(1189) ! 04a5
!WIN32_IE_SETNOTIFY    EQUATE(1217) ! 04c1
!WIN32_IE_SETPENTIP    EQUATE(1177) ! 0499
!WIN32_IE_SETRECOG    EQUATE(1219) ! 04c3
!WIN32_IE_SETSECURITY    EQUATE(1221) ! 04c5
!WIN32_IE_SETSEL    EQUATE(1223) ! 04c7
!WIN32_IPM_CLEARADDRESS    EQUATE(1124) ! 0464
!WIN32_IPM_GETADDRESS    EQUATE(1126) ! 0466
!WIN32_IPM_ISBLANK    EQUATE(1129) ! 0469
!WIN32_IPM_SETADDRESS    EQUATE(1125) ! 0465
!WIN32_IPM_SETFOCUS    EQUATE(1128) ! 0468
!WIN32_IPM_SETRANGE    EQUATE(1127) ! 0467
!WIN32_LVM_APPROXIMATEVIEWRECT    EQUATE(4160) ! 1040
!WIN32_LVM_ARRANGE    EQUATE(4118) ! 1016
!WIN32_LVM_CANCELEDITLABEL    EQUATE(4275) ! 10b3
!WIN32_LVM_CREATEDRAGIMAGE    EQUATE(4129) ! 1021

and 3/4 none organised bunch of equates

!WIN32_LVM_DELETEALLITEMS    EQUATE(4105) ! 1009
!WIN32_LVM_DELETECOLUMN    EQUATE(4124) ! 101c
!WIN32_LVM_DELETEITEM    EQUATE(4104) ! 1008
!WIN32_LVM_EDITLABELA    EQUATE(4119) ! 1017
!WIN32_LVM_EDITLABELW    EQUATE(4214) ! 1076
!WIN32_LVM_ENABLEGROUPVIEW    EQUATE(4253) ! 109d
!WIN32_LVM_ENSUREVISIBLE    EQUATE(4115) ! 1013
!WIN32_LVM_FINDITEMA    EQUATE(4109) ! 100d
!WIN32_LVM_FINDITEMW    EQUATE(4179) ! 1053
!WIN32_LVM_FIRST    EQUATE(4096) ! 1000
!WIN32_LVM_GETBKCOLOR    EQUATE(4096) ! 1000
!WIN32_LVM_GETBKIMAGEA    EQUATE(4165) ! 1045
!WIN32_LVM_GETBKIMAGEW    EQUATE(4235) ! 108b
!WIN32_LVM_GETCALLBACKMASK    EQUATE(4106) ! 100a
!WIN32_LVM_GETCOLUMNA    EQUATE(4121) ! 1019
!WIN32_LVM_GETCOLUMNORDERARRAY    EQUATE(4155) ! 103b
!WIN32_LVM_GETCOLUMNW    EQUATE(4191) ! 105f
!WIN32_LVM_GETCOLUMNWIDTH    EQUATE(4125) ! 101d
!WIN32_LVM_GETCOUNTPERPAGE    EQUATE(4136) ! 1028
!WIN32_LVM_GETEDITCONTROL    EQUATE(4120) ! 1018
!WIN32_LVM_GETEXTENDEDLISTVIEWSTYLE    EQUATE(4151) ! 1037
!WIN32_LVM_GETGROUPINFO    EQUATE(4245) ! 1095
!WIN32_LVM_GETGROUPMETRICS    EQUATE(4252) ! 109c
!WIN32_LVM_GETHEADER    EQUATE(4127) ! 101f
!WIN32_LVM_GETHOTCURSOR    EQUATE(4159) ! 103f
!WIN32_LVM_GETHOTITEM    EQUATE(4157) ! 103d
!WIN32_LVM_GETHOVERTIME    EQUATE(4168) ! 1048
!WIN32_LVM_GETIMAGELIST    EQUATE(4098) ! 1002
!WIN32_LVM_GETINSERTMARK    EQUATE(4263) ! 10a7
!WIN32_LVM_GETINSERTMARKCOLOR    EQUATE(4267) ! 10ab
!WIN32_LVM_GETINSERTMARKRECT    EQUATE(4265) ! 10a9
!WIN32_LVM_GETISEARCHSTRINGA    EQUATE(4148) ! 1034
!WIN32_LVM_GETISEARCHSTRINGW    EQUATE(4213) ! 1075
!WIN32_LVM_GETITEMA    EQUATE(4101) ! 1005
!WIN32_LVM_GETITEMCOUNT    EQUATE(4100) ! 1004
!WIN32_LVM_GETITEMPOSITION    EQUATE(4112) ! 1010
!WIN32_LVM_GETITEMRECT    EQUATE(4110) ! 100e
!WIN32_LVM_GETITEMSPACING    EQUATE(4147) ! 1033
!WIN32_LVM_GETITEMSTATE    EQUATE(4140) ! 102c
!WIN32_LVM_GETITEMTEXTA    EQUATE(4141) ! 102d
!WIN32_LVM_GETITEMTEXTW    EQUATE(4211) ! 1073
!WIN32_LVM_GETITEMW    EQUATE(4171) ! 104b
!WIN32_LVM_GETNEXTITEM    EQUATE(4108) ! 100c
!WIN32_LVM_GETNUMBEROFWORKAREAS    EQUATE(4169) ! 1049
!WIN32_LVM_GETORIGIN    EQUATE(4137) ! 1029
!WIN32_LVM_GETOUTLINECOLOR    EQUATE(4272) ! 10b0
!WIN32_LVM_GETSELECTEDCOLUMN    EQUATE(4270) ! 10ae
!WIN32_LVM_GETSELECTEDCOUNT    EQUATE(4146) ! 1032
!WIN32_LVM_GETSELECTIONMARK    EQUATE(4162) ! 1042
!WIN32_LVM_GETSTRINGWIDTHA    EQUATE(4113) ! 1011
!WIN32_LVM_GETSTRINGWIDTHW    EQUATE(4183) ! 1057
!WIN32_LVM_GETSUBITEMRECT    EQUATE(4152) ! 1038
!WIN32_LVM_GETTEXTBKCOLOR    EQUATE(4133) ! 1025
!WIN32_LVM_GETTEXTCOLOR    EQUATE(4131) ! 1023
!WIN32_LVM_GETTILEINFO    EQUATE(4261) ! 10a5
!WIN32_LVM_GETTILEVIEWINFO    EQUATE(4259) ! 10a3
!WIN32_LVM_GETTOOLTIPS    EQUATE(4174) ! 104e
!WIN32_LVM_GETTOPINDEX    EQUATE(4135) ! 1027
!WIN32_LVM_GETUNICODEFORMAT    EQUATE(8198) ! 2006
!WIN32_LVM_GETVIEW    EQUATE(4239) ! 108f
!WIN32_LVM_GETVIEWRECT    EQUATE(4130) ! 1022
!WIN32_LVM_GETWORKAREAS    EQUATE(4166) ! 1046
!WIN32_LVM_HASGROUP    EQUATE(4257) ! 10a1
!WIN32_LVM_HITTEST    EQUATE(4114) ! 1012
!WIN32_LVM_INSERTCOLUMNA    EQUATE(4123) ! 101b
!WIN32_LVM_INSERTCOLUMNW    EQUATE(4193) ! 1061
!WIN32_LVM_INSERTGROUP    EQUATE(4241) ! 1091
!WIN32_LVM_INSERTGROUPSORTED    EQUATE(4255) ! 109f
!WIN32_LVM_INSERTITEMA    EQUATE(4103) ! 1007
!WIN32_LVM_INSERTITEMW    EQUATE(4173) ! 104d
!WIN32_LVM_INSERTMARKHITTEST    EQUATE(4264) ! 10a8
!WIN32_LVM_ISGROUPVIEWENABLED    EQUATE(4271) ! 10af
!WIN32_LVM_ISITEMVISIBLE    EQUATE(4278) ! 10b6
!WIN32_LVM_MAPIDTOINDEX    EQUATE(4277) ! 10b5
!WIN32_LVM_MAPINDEXTOID    EQUATE(4276) ! 10b4
!WIN32_LVM_MOVEGROUP    EQUATE(4247) ! 1097
!WIN32_LVM_MOVEITEMTOGROUP    EQUATE(4250) ! 109a
!WIN32_LVM_REDRAWITEMS    EQUATE(4117) ! 1015
!WIN32_LVM_REMOVEALLGROUPS    EQUATE(4256) ! 10a0
!WIN32_LVM_REMOVEGROUP    EQUATE(4246) ! 1096
!WIN32_LVM_SCROLL    EQUATE(4116) ! 1014
!WIN32_LVM_SETBKCOLOR    EQUATE(4097) ! 1001
!WIN32_LVM_SETBKIMAGEA    EQUATE(4164) ! 1044
!WIN32_LVM_SETCALLBACKMASK    EQUATE(4107) ! 100b
!WIN32_LVM_SETCOLUMNA    EQUATE(4122) ! 101a
!WIN32_LVM_SETCOLUMNORDERARRAY    EQUATE(4154) ! 103a
!WIN32_LVM_SETCOLUMNW    EQUATE(4192) ! 1060
!WIN32_LVM_SETCOLUMNWIDTH    EQUATE(4126) ! 101e
!WIN32_LVM_SETEXTENDEDLISTVIEWSTYLE    EQUATE(4150) ! 1036
!WIN32_LVM_SETGROUPINFO    EQUATE(4243) ! 1093
!WIN32_LVM_SETGROUPMETRICS    EQUATE(4251) ! 109b
!WIN32_LVM_SETHOTCURSOR    EQUATE(4158) ! 103e
!WIN32_LVM_SETHOTITEM    EQUATE(4156) ! 103c
!WIN32_LVM_SETHOVERTIME    EQUATE(4167) ! 1047
!WIN32_LVM_SETICONSPACING    EQUATE(4149) ! 1035
!WIN32_LVM_SETIMAGELIST    EQUATE(4099) ! 1003
!WIN32_LVM_SETINFOTIP    EQUATE(4269) ! 10ad
!WIN32_LVM_SETINSERTMARK    EQUATE(4262) ! 10a6
!WIN32_LVM_SETINSERTMARKCOLOR    EQUATE(4266) ! 10aa
!WIN32_LVM_SETITEMA    EQUATE(4102) ! 1006
!WIN32_LVM_SETITEMCOUNT    EQUATE(4143) ! 102f
!WIN32_LVM_SETITEMPOSITION    EQUATE(4111) ! 100f
!WIN32_LVM_SETITEMPOSITION32    EQUATE(4145) ! 1031
!WIN32_LVM_SETITEMSTATE    EQUATE(4139) ! 102b
!WIN32_LVM_SETITEMTEXTA    EQUATE(4142) ! 102e
!WIN32_LVM_SETITEMTEXTW    EQUATE(4212) ! 1074
!WIN32_LVM_SETITEMW    EQUATE(4172) ! 104c
!WIN32_LVM_SETOUTLINECOLOR    EQUATE(4273) ! 10b1
!WIN32_LVM_SETSELECTEDCOLUMN    EQUATE(4236) ! 108c
!WIN32_LVM_SETSELECTIONMARK    EQUATE(4163) ! 1043
!WIN32_LVM_SETTEXTBKCOLOR    EQUATE(4134) ! 1026
!WIN32_LVM_SETTEXTCOLOR    EQUATE(4132) ! 1024
!WIN32_LVM_SETTILEINFO    EQUATE(4260) ! 10a4
!WIN32_LVM_SETTILEVIEWINFO    EQUATE(4258) ! 10a2
!WIN32_LVM_SETTILEWIDTH    EQUATE(4237) ! 108d
!WIN32_LVM_SETTOOLTIPS    EQUATE(4170) ! 104a
!WIN32_LVM_SETUNICODEFORMAT    EQUATE(8197) ! 2005
!WIN32_LVM_SETVIEW    EQUATE(4238) ! 108e
!WIN32_LVM_SETWORKAREAS    EQUATE(4161) ! 1041
!WIN32_LVM_SORTGROUPS    EQUATE(4254) ! 109e
!WIN32_LVM_SORTITEMS    EQUATE(4144) ! 1030
!WIN32_LVM_SUBITEMHITTEST    EQUATE(4153) ! 1039
!WIN32_LVM_UPDATE    EQUATE(4138) ! 102a
!WIN32_MCIWNDM_CAN_CONFIG    EQUATE(1173) ! 0495
!WIN32_MCIWNDM_CAN_EJECT    EQUATE(1172) ! 0494
!WIN32_MCIWNDM_CAN_PLAY    EQUATE(1168) ! 0490
!WIN32_MCIWNDM_CAN_RECORD    EQUATE(1170) ! 0492
!WIN32_MCIWNDM_CAN_SAVE    EQUATE(1171) ! 0493
!WIN32_MCIWNDM_CAN_WINDOW    EQUATE(1169) ! 0491
!WIN32_MCIWNDM_GET_DEST    EQUATE(1166) ! 048e
!WIN32_MCIWNDM_GET_SOURCE    EQUATE(1164) ! 048c
!WIN32_MCIWNDM_GETDEVICEA    EQUATE(1149) ! 047d
!WIN32_MCIWNDM_GETDEVICEW    EQUATE(1249) ! 04e1
!WIN32_MCIWNDM_GETERRORA    EQUATE(1152) ! 0480
!WIN32_MCIWNDM_GETERRORW    EQUATE(1252) ! 04e4
!WIN32_MCIWNDM_GETFILENAMEA    EQUATE(1148) ! 047c
!WIN32_MCIWNDM_GETFILENAMEW    EQUATE(1248) ! 04e0
!WIN32_MCIWNDM_GETINACTIVETIMER    EQUATE(1157) ! 0485
!WIN32_MCIWNDM_GETPALETTE    EQUATE(1150) ! 047e
!WIN32_MCIWNDM_GETTIMEFORMATA    EQUATE(1144) ! 0478
!WIN32_MCIWNDM_GETTIMEFORMATW    EQUATE(1244) ! 04dc
!WIN32_MCIWNDM_GETZOOM    EQUATE(1133) ! 046d
!WIN32_MCIWNDM_NOTIFYERROR    EQUATE(1229) ! 04cd
!WIN32_MCIWNDM_NOTIFYMEDIA    EQUATE(1227) ! 04cb
!WIN32_MCIWNDM_NOTIFYMODE    EQUATE(1224) ! 04c8
!WIN32_MCIWNDM_PALETTEKICK    EQUATE(1174) ! 0496
!WIN32_MCIWNDM_PLAYTO    EQUATE(1147) ! 047b
!WIN32_MCIWNDM_PUT_DEST    EQUATE(1167) ! 048f
!WIN32_MCIWNDM_PUT_SOURCE    EQUATE(1165) ! 048d
!WIN32_MCIWNDM_REALIZE    EQUATE(1142) ! 0476
!WIN32_MCIWNDM_SETINACTIVETIMER    EQUATE(1155) ! 0483
!WIN32_MCIWNDM_SETPALETTE    EQUATE(1151) ! 047f
!WIN32_MCIWNDM_SETTIMEFORMATA    EQUATE(1143) ! 0477
!WIN32_MCIWNDM_SETTIMEFORMATW    EQUATE(1243) ! 04db
!WIN32_MCIWNDM_VALIDATEMEDIA    EQUATE(1145) ! 0479
!WIN32_MSG_FTS_JUMP_QWORD    EQUATE(1059) ! 0423
!WIN32_MSG_FTS_JUMP_VA    EQUATE(1057) ! 0421
!WIN32_MSG_FTS_WHERE_IS_IT    EQUATE(1061) ! 0425
!WIN32_MSG_GET_DEFFONT    EQUATE(1069) ! 042d
!WIN32_MSG_REINDEX_REQUEST    EQUATE(1060) ! 0424
!WIN32_NIN_SELECT    EQUATE(1024) ! 0400
!WIN32_OCM__BASE    EQUATE(8192) ! 2000
!WIN32_OCM_CHARTOITEM    EQUATE(8239) ! 202f
!WIN32_OCM_COMMAND    EQUATE(8465) ! 2111
!WIN32_OCM_COMPAREITEM    EQUATE(8249) ! 2039
!WIN32_OCM_CTLCOLOR    EQUATE(8217) ! 2019
!WIN32_OCM_CTLCOLORBTN    EQUATE(8501) ! 2135
!WIN32_OCM_CTLCOLORDLG    EQUATE(8502) ! 2136
!WIN32_OCM_CTLCOLOREDIT    EQUATE(8499) ! 2133
!WIN32_OCM_CTLCOLORLISTBOX    EQUATE(8500) ! 2134
!WIN32_OCM_CTLCOLORMSGBOX    EQUATE(8498) ! 2132
!WIN32_OCM_CTLCOLORSCROLLBAR    EQUATE(8503) ! 2137
!WIN32_OCM_CTLCOLORSTATIC    EQUATE(8504) ! 2138
!WIN32_OCM_DELETEITEM    EQUATE(8237) ! 202d
!WIN32_OCM_DRAWITEM    EQUATE(8235) ! 202b
!WIN32_OCM_HSCROLL    EQUATE(8468) ! 2114
!WIN32_OCM_MEASUREITEM    EQUATE(8236) ! 202c
!WIN32_OCM_NOTIFY    EQUATE(8270) ! 204e
!WIN32_OCM_PARENTNOTIFY    EQUATE(8720) ! 2210
!WIN32_OCM_VKEYTOITEM    EQUATE(8238) ! 202e
!WIN32_OCM_VSCROLL    EQUATE(8469) ! 2115
!WIN32_PBM_DELTAPOS    EQUATE(1027) ! 0403
!WIN32_PBM_GETPOS    EQUATE(1032) ! 0408
!WIN32_PBM_GETRANGE    EQUATE(1031) ! 0407
!WIN32_PBM_SETBARCOLOR    EQUATE(1033) ! 0409
!WIN32_PBM_SETPOS    EQUATE(1026) ! 0402
!WIN32_PBM_SETRANGE    EQUATE(1025) ! 0401
!WIN32_PBM_SETRANGE32    EQUATE(1030) ! 0406
!WIN32_PBM_SETSTEP    EQUATE(1028) ! 0404
!WIN32_PBM_STEPIT    EQUATE(1029) ! 0405
!WIN32_PSM_ADDPAGE    EQUATE(1127) ! 0467
!WIN32_PSM_APPLY    EQUATE(1134) ! 046e
!WIN32_PSM_CANCELTOCLOSE    EQUATE(1131) ! 046b
!WIN32_PSM_CHANGED    EQUATE(1128) ! 0468
!WIN32_PSM_GETCURRENTPAGEHWND    EQUATE(1142) ! 0476
!WIN32_PSM_GETRESULT    EQUATE(1159) ! 0487
!WIN32_PSM_GETTABCONTROL    EQUATE(1140) ! 0474
!WIN32_PSM_HWNDTOINDEX    EQUATE(1153) ! 0481
!WIN32_PSM_IDTOINDEX    EQUATE(1157) ! 0485
!WIN32_PSM_INDEXTOHWND    EQUATE(1154) ! 0482
!WIN32_PSM_INDEXTOID    EQUATE(1158) ! 0486
!WIN32_PSM_INDEXTOPAGE    EQUATE(1156) ! 0484
!WIN32_PSM_INSERTPAGE    EQUATE(1143) ! 0477
!WIN32_PSM_ISDIALOGMESSAGE    EQUATE(1141) ! 0475
!WIN32_PSM_PAGETOINDEX    EQUATE(1155) ! 0483
!WIN32_PSM_PRESSBUTTON    EQUATE(1137) ! 0471
!WIN32_PSM_QUERYSIBLINGS    EQUATE(1132) ! 046c
!WIN32_PSM_REBOOTSYSTEM    EQUATE(1130) ! 046a
!WIN32_PSM_RECALCPAGESIZES    EQUATE(1160) ! 0488
!WIN32_PSM_REMOVEPAGE    EQUATE(1126) ! 0466
!WIN32_PSM_RESTARTWINDOWS    EQUATE(1129) ! 0469
!WIN32_PSM_SETCURSEL    EQUATE(1125) ! 0465
!WIN32_PSM_SETCURSELID    EQUATE(1138) ! 0472
!WIN32_PSM_SETFINISHTEXTA    EQUATE(1139) ! 0473
!WIN32_PSM_SETFINISHTEXTW    EQUATE(1145) ! 0479
!WIN32_PSM_SETHEADERSUBTITLEA    EQUATE(1151) ! 047f
!WIN32_PSM_SETHEADERSUBTITLEW    EQUATE(1152) ! 0480
!WIN32_PSM_SETHEADERTITLEA    EQUATE(1149) ! 047d
!WIN32_PSM_SETHEADERTITLEW    EQUATE(1150) ! 047e
!WIN32_PSM_SETTITLEA    EQUATE(1135) ! 046f
!WIN32_PSM_SETTITLEW    EQUATE(1144) ! 0478
!WIN32_PSM_SETWIZBUTTONS    EQUATE(1136) ! 0470
!WIN32_PSM_UNCHANGED    EQUATE(1133) ! 046d
!WIN32_RB_BEGINDRAG    EQUATE(1048) ! 0418
!WIN32_RB_DELETEBAND    EQUATE(1026) ! 0402
!WIN32_RB_DRAGMOVE    EQUATE(1050) ! 041a
!WIN32_RB_ENDDRAG    EQUATE(1049) ! 0419
!WIN32_RB_GETBANDBORDERS    EQUATE(1058) ! 0422
!WIN32_RB_GETBANDCOUNT    EQUATE(1036) ! 040c
!WIN32_RB_GETBANDINFOA    EQUATE(1053) ! 041d
!WIN32_RB_GETBANDINFOW    EQUATE(1052) ! 041c
!WIN32_RB_GETBARHEIGHT    EQUATE(1051) ! 041b
!WIN32_RB_GETBARINFO    EQUATE(1027) ! 0403
!WIN32_RB_GETBKCOLOR    EQUATE(1044) ! 0414
!WIN32_RB_GETPALETTE    EQUATE(1062) ! 0426
!WIN32_RB_GETRECT    EQUATE(1033) ! 0409
!WIN32_RB_GETROWCOUNT    EQUATE(1037) ! 040d
!WIN32_RB_GETROWHEIGHT    EQUATE(1038) ! 040e
!WIN32_RB_GETTEXTCOLOR    EQUATE(1046) ! 0416
!WIN32_RB_GETTOOLTIPS    EQUATE(1041) ! 0411
!WIN32_RB_HITTEST    EQUATE(1032) ! 0408
!WIN32_RB_IDTOINDEX    EQUATE(1040) ! 0410
!WIN32_RB_INSERTBANDA    EQUATE(1025) ! 0401
!WIN32_RB_INSERTBANDW    EQUATE(1034) ! 040a
!WIN32_RB_MAXIMIZEBAND    EQUATE(1055) ! 041f
!WIN32_RB_MINIMIZEBAND    EQUATE(1054) ! 041e
!WIN32_RB_MOVEBAND    EQUATE(1063) ! 0427
!WIN32_RB_PUSHCHEVRON    EQUATE(1067) ! 042b
!WIN32_RB_SETBANDINFOA    EQUATE(1030) ! 0406
!WIN32_RB_SETBANDINFOW    EQUATE(1035) ! 040b
!WIN32_RB_SETBARINFO    EQUATE(1028) ! 0404
!WIN32_RB_SETBKCOLOR    EQUATE(1043) ! 0413
!WIN32_RB_SETPALETTE    EQUATE(1061) ! 0425
!WIN32_RB_SETPARENT    EQUATE(1031) ! 0407
!WIN32_RB_SETTEXTCOLOR    EQUATE(1045) ! 0415
!WIN32_RB_SETTOOLTIPS    EQUATE(1042) ! 0412
!WIN32_RB_SHOWBAND    EQUATE(1059) ! 0423
!WIN32_RB_SIZETORECT    EQUATE(1047) ! 0417
!WIN32_SB_GETBORDERS    EQUATE(1031) ! 0407
!WIN32_SB_GETICON    EQUATE(1044) ! 0414
!WIN32_SB_GETPARTS    EQUATE(1030) ! 0406
!WIN32_SB_GETRECT    EQUATE(1034) ! 040a
!WIN32_SB_GETTEXTA    EQUATE(1026) ! 0402
!WIN32_SB_GETTEXTLENGTHA    EQUATE(1027) ! 0403
!WIN32_SB_GETTEXTLENGTHW    EQUATE(1036) ! 040c
!WIN32_SB_GETTEXTW    EQUATE(1037) ! 040d
!WIN32_SB_GETTIPTEXTA    EQUATE(1042) ! 0412
!WIN32_SB_GETTIPTEXTW    EQUATE(1043) ! 0413
!WIN32_SB_ISSIMPLE    EQUATE(1038) ! 040e
!WIN32_SB_SETICON    EQUATE(1039) ! 040f
!WIN32_SB_SETMINHEIGHT    EQUATE(1032) ! 0408
!WIN32_SB_SETPARTS    EQUATE(1028) ! 0404
!WIN32_SB_SETTEXTA    EQUATE(1025) ! 0401
!WIN32_SB_SETTEXTW    EQUATE(1035) ! 040b
!WIN32_SB_SETTIPTEXTA    EQUATE(1040) ! 0410
!WIN32_SB_SETTIPTEXTW    EQUATE(1041) ! 0411
!WIN32_SB_SIMPLE    EQUATE(1033) ! 0409
!WIN32_SBM_ENABLE_ARROWS    EQUATE(228) ! 00e4
!WIN32_SBM_GETPOS    EQUATE(225) ! 00e1
!WIN32_SBM_GETRANGE    EQUATE(227) ! 00e3
!WIN32_SBM_GETSCROLLBARINFO    EQUATE(235) ! 00eb
!WIN32_SBM_GETSCROLLINFO    EQUATE(234) ! 00ea
!WIN32_SBM_SETPOS    EQUATE(224) ! 00e0
!WIN32_SBM_SETRANGE    EQUATE(226) ! 00e2
!WIN32_SBM_SETRANGEREDRAW    EQUATE(230) ! 00e6
!WIN32_SBM_SETSCROLLINFO    EQUATE(233) ! 00e9
!WIN32_SM_GETCURFOCUSA    EQUATE(2027) ! 07eb
!WIN32_SM_GETCURFOCUSW    EQUATE(2028) ! 07ec
!WIN32_SM_GETOPTIONS    EQUATE(2029) ! 07ed
!WIN32_SM_GETSELCOUNT    EQUATE(2024) ! 07e8
!WIN32_SM_GETSERVERSELA    EQUATE(2025) ! 07e9
!WIN32_SM_GETSERVERSELW    EQUATE(2026) ! 07ea
!WIN32_TAPI_REPLY    EQUATE(1123) ! 0463
!WIN32_TB_ADDBITMAP    EQUATE(1043) ! 0413
!WIN32_TB_ADDBUTTONSA    EQUATE(1044) ! 0414
!WIN32_TB_ADDBUTTONSW    EQUATE(1092) ! 0444
!WIN32_TB_ADDSTRINGA    EQUATE(1052) ! 041c
!WIN32_TB_ADDSTRINGW    EQUATE(1101) ! 044d
!WIN32_TB_AUTOSIZE    EQUATE(1057) ! 0421
!WIN32_TB_BUTTONCOUNT    EQUATE(1048) ! 0418
!WIN32_TB_BUTTONSTRUCTSIZE    EQUATE(1054) ! 041e
!WIN32_TB_CHANGEBITMAP    EQUATE(1067) ! 042b
!WIN32_TB_CHECKBUTTON    EQUATE(1026) ! 0402
!WIN32_TB_COMMANDTOINDEX    EQUATE(1049) ! 0419
!WIN32_TB_CUSTOMIZE    EQUATE(1051) ! 041b
!WIN32_TB_DELETEBUTTON    EQUATE(1046) ! 0416
!WIN32_TB_ENABLEBUTTON    EQUATE(1025) ! 0401
!WIN32_TB_GETANCHORHIGHLIGHT    EQUATE(1098) ! 044a
!WIN32_TB_GETBITMAP    EQUATE(1068) ! 042c
!WIN32_TB_GETBITMAPFLAGS    EQUATE(1065) ! 0429
!WIN32_TB_GETBUTTON    EQUATE(1047) ! 0417
!WIN32_TB_GETBUTTONINFOA    EQUATE(1089) ! 0441
!WIN32_TB_GETBUTTONINFOW    EQUATE(1087) ! 043f
!WIN32_TB_GETBUTTONSIZE    EQUATE(1082) ! 043a
!WIN32_TB_GETBUTTONTEXTA    EQUATE(1069) ! 042d
!WIN32_TB_GETBUTTONTEXTW    EQUATE(1099) ! 044b
!WIN32_TB_GETDISABLEDIMAGELIST    EQUATE(1079) ! 0437
!WIN32_TB_GETEXTENDEDSTYLE    EQUATE(1109) ! 0455
!WIN32_TB_GETHOTIMAGELIST    EQUATE(1077) ! 0435
!WIN32_TB_GETHOTITEM    EQUATE(1095) ! 0447
!WIN32_TB_GETIMAGELIST    EQUATE(1073) ! 0431
!WIN32_TB_GETINSERTMARK    EQUATE(1103) ! 044f
!WIN32_TB_GETINSERTMARKCOLOR    EQUATE(1113) ! 0459
!WIN32_TB_GETITEMRECT    EQUATE(1053) ! 041d
!WIN32_TB_GETMAXSIZE    EQUATE(1107) ! 0453
!WIN32_TB_GETOBJECT    EQUATE(1086) ! 043e
!WIN32_TB_GETPADDING    EQUATE(1110) ! 0456
!WIN32_TB_GETRECT    EQUATE(1075) ! 0433
!WIN32_TB_GETROWS    EQUATE(1064) ! 0428
!WIN32_TB_GETSTATE    EQUATE(1042) ! 0412
!WIN32_TB_GETSTRINGA    EQUATE(1116) ! 045c
!WIN32_TB_GETSTRINGW    EQUATE(1115) ! 045b
!WIN32_TB_GETSTYLE    EQUATE(1081) ! 0439
!WIN32_TB_GETTEXTROWS    EQUATE(1085) ! 043d
!WIN32_TB_GETTOOLTIPS    EQUATE(1059) ! 0423
!WIN32_TB_HIDEBUTTON    EQUATE(1028) ! 0404
!WIN32_TB_HITTEST    EQUATE(1093) ! 0445
!WIN32_TB_INDETERMINATE    EQUATE(1029) ! 0405
!WIN32_TB_INSERTBUTTONA    EQUATE(1045) ! 0415
!WIN32_TB_INSERTBUTTONW    EQUATE(1091) ! 0443
!WIN32_TB_INSERTMARKHITTEST    EQUATE(1105) ! 0451
!WIN32_TB_ISBUTTONCHECKED    EQUATE(1034) ! 040a
!WIN32_TB_ISBUTTONENABLED    EQUATE(1033) ! 0409
!WIN32_TB_ISBUTTONHIDDEN    EQUATE(1036) ! 040c
!WIN32_TB_ISBUTTONHIGHLIGHTED    EQUATE(1038) ! 040e
!WIN32_TB_ISBUTTONINDETERMINATE    EQUATE(1037) ! 040d
!WIN32_TB_ISBUTTONPRESSED    EQUATE(1035) ! 040b
!WIN32_TB_LOADIMAGES    EQUATE(1074) ! 0432
!WIN32_TB_MAPACCELERATORA    EQUATE(1102) ! 044e
!WIN32_TB_MAPACCELERATORW    EQUATE(1114) ! 045a
!WIN32_TB_MARKBUTTON    EQUATE(1030) ! 0406
!WIN32_TB_MOVEBUTTON    EQUATE(1106) ! 0452
!WIN32_TB_PRESSBUTTON    EQUATE(1027) ! 0403
!WIN32_TB_REPLACEBITMAP    EQUATE(1070) ! 042e
!WIN32_TB_SAVERESTOREA    EQUATE(1050) ! 041a
!WIN32_TB_SAVERESTOREW    EQUATE(1100) ! 044c
!WIN32_TB_SETANCHORHIGHLIGHT    EQUATE(1097) ! 0449
!WIN32_TB_SETBITMAPSIZE    EQUATE(1056) ! 0420
!WIN32_TB_SETBUTTONINFOA    EQUATE(1090) ! 0442
!WIN32_TB_SETBUTTONINFOW    EQUATE(1088) ! 0440
!WIN32_TB_SETBUTTONSIZE    EQUATE(1055) ! 041f
!WIN32_TB_SETBUTTONWIDTH    EQUATE(1083) ! 043b
!WIN32_TB_SETCMDID    EQUATE(1066) ! 042a
!WIN32_TB_SETDISABLEDIMAGELIST    EQUATE(1078) ! 0436
!WIN32_TB_SETDRAWTEXTFLAGS    EQUATE(1094) ! 0446
!WIN32_TB_SETEXTENDEDSTYLE    EQUATE(1108) ! 0454
!WIN32_TB_SETHOTIMAGELIST    EQUATE(1076) ! 0434
!WIN32_TB_SETHOTITEM    EQUATE(1096) ! 0448
!WIN32_TB_SETIMAGELIST    EQUATE(1072) ! 0430
!WIN32_TB_SETINDENT    EQUATE(1071) ! 042f
!WIN32_TB_SETINSERTMARK    EQUATE(1104) ! 0450
!WIN32_TB_SETINSERTMARKCOLOR    EQUATE(1112) ! 0458
!WIN32_TB_SETMAXTEXTROWS    EQUATE(1084) ! 043c
!WIN32_TB_SETPADDING    EQUATE(1111) ! 0457
!WIN32_TB_SETPARENT    EQUATE(1061) ! 0425
!WIN32_TB_SETROWS    EQUATE(1063) ! 0427
!WIN32_TB_SETSTATE    EQUATE(1041) ! 0411
!WIN32_TB_SETSTYLE    EQUATE(1080) ! 0438
!WIN32_TB_SETTOOLTIPS    EQUATE(1060) ! 0424
!WIN32_TBM_CLEARSEL    EQUATE(1043) ! 0413
!WIN32_TBM_CLEARTICS    EQUATE(1033) ! 0409
!WIN32_TBM_GETBUDDY    EQUATE(1057) ! 0421
!WIN32_TBM_GETCHANNELRECT    EQUATE(1050) ! 041a
!WIN32_TBM_GETLINESIZE    EQUATE(1048) ! 0418
!WIN32_TBM_GETNUMTICS    EQUATE(1040) ! 0410
!WIN32_TBM_GETPAGESIZE    EQUATE(1046) ! 0416
!WIN32_TBM_GETPOS    EQUATE(1024) ! 0400
!WIN32_TBM_GETPTICS    EQUATE(1038) ! 040e
!WIN32_TBM_GETRANGEMAX    EQUATE(1026) ! 0402
!WIN32_TBM_GETRANGEMIN    EQUATE(1025) ! 0401
!WIN32_TBM_GETSELEND    EQUATE(1042) ! 0412
!WIN32_TBM_GETSELSTART    EQUATE(1041) ! 0411
!WIN32_TBM_GETTHUMBLENGTH    EQUATE(1052) ! 041c
!WIN32_TBM_GETTHUMBRECT    EQUATE(1049) ! 0419
!WIN32_TBM_GETTIC    EQUATE(1027) ! 0403
!WIN32_TBM_GETTICPOS    EQUATE(1039) ! 040f
!WIN32_TBM_GETTOOLTIPS    EQUATE(1054) ! 041e
!WIN32_TBM_SETBUDDY    EQUATE(1056) ! 0420
!WIN32_TBM_SETLINESIZE    EQUATE(1047) ! 0417
!WIN32_TBM_SETPAGESIZE    EQUATE(1045) ! 0415
!WIN32_TBM_SETPOS    EQUATE(1029) ! 0405
!WIN32_TBM_SETRANGE    EQUATE(1030) ! 0406
!WIN32_TBM_SETRANGEMAX    EQUATE(1032) ! 0408
!WIN32_TBM_SETRANGEMIN    EQUATE(1031) ! 0407
!WIN32_TBM_SETSEL    EQUATE(1034) ! 040a
!WIN32_TBM_SETSELEND    EQUATE(1036) ! 040c
!WIN32_TBM_SETSELSTART    EQUATE(1035) ! 040b
!WIN32_TBM_SETTHUMBLENGTH    EQUATE(1051) ! 041b
!WIN32_TBM_SETTIC    EQUATE(1028) ! 0404
!WIN32_TBM_SETTICFREQ    EQUATE(1044) ! 0414
!WIN32_TBM_SETTIPSIDE    EQUATE(1055) ! 041f
!WIN32_TBM_SETTOOLTIPS    EQUATE(1053) ! 041d
!WIN32_TTM_ACTIVATE    EQUATE(1025) ! 0401
!WIN32_TTM_ADDTOOLA    EQUATE(1028) ! 0404
!WIN32_TTM_ADDTOOLW    EQUATE(1074) ! 0432
!WIN32_TTM_ADJUSTRECT    EQUATE(1055) ! 041f
!WIN32_TTM_DELTOOLA    EQUATE(1029) ! 0405
!WIN32_TTM_DELTOOLW    EQUATE(1075) ! 0433
!WIN32_TTM_ENUMTOOLSA    EQUATE(1038) ! 040e
!WIN32_TTM_ENUMTOOLSW    EQUATE(1082) ! 043a
!WIN32_TTM_GETBUBBLESIZE    EQUATE(1054) ! 041e
!WIN32_TTM_GETCURRENTTOOLA    EQUATE(1039) ! 040f
!WIN32_TTM_GETCURRENTTOOLW    EQUATE(1083) ! 043b
!WIN32_TTM_GETDELAYTIME    EQUATE(1045) ! 0415
!WIN32_TTM_GETMARGIN    EQUATE(1051) ! 041b
!WIN32_TTM_GETMAXTIPWIDTH    EQUATE(1049) ! 0419
!WIN32_TTM_GETTEXTA    EQUATE(1035) ! 040b
!WIN32_TTM_GETTEXTW    EQUATE(1080) ! 0438
!WIN32_TTM_GETTIPBKCOLOR    EQUATE(1046) ! 0416
!WIN32_TTM_GETTIPTEXTCOLOR    EQUATE(1047) ! 0417
!WIN32_TTM_GETTOOLCOUNT    EQUATE(1037) ! 040d
!WIN32_TTM_GETTOOLINFOA    EQUATE(1032) ! 0408
!WIN32_TTM_GETTOOLINFOW    EQUATE(1077) ! 0435
!WIN32_TTM_HITTESTA    EQUATE(1034) ! 040a
!WIN32_TTM_HITTESTW    EQUATE(1079) ! 0437
!WIN32_TTM_NEWTOOLRECTA    EQUATE(1030) ! 0406
!WIN32_TTM_NEWTOOLRECTW    EQUATE(1076) ! 0434
!WIN32_TTM_POP    EQUATE(1052) ! 041c
!WIN32_TTM_RELAYEVENT    EQUATE(1031) ! 0407
!WIN32_TTM_SETDELAYTIME    EQUATE(1027) ! 0403
!WIN32_TTM_SETMARGIN    EQUATE(1050) ! 041a
!WIN32_TTM_SETMAXTIPWIDTH    EQUATE(1048) ! 0418
!WIN32_TTM_SETTIPBKCOLOR    EQUATE(1043) ! 0413
!WIN32_TTM_SETTIPTEXTCOLOR    EQUATE(1044) ! 0414
!WIN32_TTM_SETTITLEA    EQUATE(1056) ! 0420
!WIN32_TTM_SETTITLEW    EQUATE(1057) ! 0421
!WIN32_TTM_SETTOOLINFOA    EQUATE(1033) ! 0409
!WIN32_TTM_SETTOOLINFOW    EQUATE(1078) ! 0436
!WIN32_TTM_TRACKACTIVATE    EQUATE(1041) ! 0411
!WIN32_TTM_TRACKPOSITION    EQUATE(1042) ! 0412
!WIN32_TTM_UPDATE    EQUATE(1053) ! 041d
!WIN32_TTM_UPDATETIPTEXTA    EQUATE(1036) ! 040c
!WIN32_TTM_UPDATETIPTEXTW    EQUATE(1081) ! 0439
!WIN32_TTM_WINDOWFROMPOINT    EQUATE(1040) ! 0410
!WIN32_UDM_GETACCEL    EQUATE(1132) ! 046c
!WIN32_UDM_GETBASE    EQUATE(1134) ! 046e
!WIN32_UDM_GETBUDDY    EQUATE(1130) ! 046a
!WIN32_UDM_GETPOS    EQUATE(1128) ! 0468
!WIN32_UDM_GETPOS32    EQUATE(1138) ! 0472
!WIN32_UDM_GETRANGE    EQUATE(1126) ! 0466
!WIN32_UDM_GETRANGE32    EQUATE(1136) ! 0470
!WIN32_UDM_SETACCEL    EQUATE(1131) ! 046b
!WIN32_UDM_SETBASE    EQUATE(1133) ! 046d
!WIN32_UDM_SETBUDDY    EQUATE(1129) ! 0469
!WIN32_UDM_SETPOS    EQUATE(1127) ! 0467
!WIN32_UDM_SETPOS32    EQUATE(1137) ! 0471
!WIN32_UDM_SETRANGE    EQUATE(1125) ! 0465
!WIN32_UDM_SETRANGE32    EQUATE(1135) ! 046f
!WIN32_UM_GETCURFOCUSA    EQUATE(2029) ! 07ed
!WIN32_UM_GETCURFOCUSW    EQUATE(2030) ! 07ee
!WIN32_UM_GETGROUPSELA    EQUATE(2027) ! 07eb
!WIN32_UM_GETGROUPSELW    EQUATE(2028) ! 07ec
!WIN32_UM_GETOPTIONS    EQUATE(2031) ! 07ef
!WIN32_UM_GETOPTIONS2    EQUATE(2032) ! 07f0
!WIN32_UM_GETSELCOUNT    EQUATE(2024) ! 07e8
!WIN32_UM_GETUSERSELA    EQUATE(2025) ! 07e9
!WIN32_UM_GETUSERSELW    EQUATE(2026) ! 07ea
!WIN32_WIZ_NEXT    EQUATE(1035) ! 040b
!WIN32_WIZ_PREV    EQUATE(1036) ! 040c
!WIN32_WIZ_QUERYNUMPAGES    EQUATE(1034) ! 040a
!WIN32_WLX_WM_SAS    EQUATE(1625) ! 0659
!WM_ACTIVATE    EQUATE(6) ! 0006
!WM_ACTIVATEAPP    EQUATE(28) ! 001c
!WM_AFXFIRST    EQUATE(864) ! 0360
!WM_AFXLAST    EQUATE(895) ! 037f
!WM_APP    EQUATE(32768) ! 8000
!WM_APPCOMMAND    EQUATE(793) ! 0319
!WM_ASKCBFORMATNAME    EQUATE(780) ! 030c
!WM_CANCELJOURNAL    EQUATE(75) ! 004b
!WM_CANCELMODE    EQUATE(31) ! 001f
!WM_CAP_DRIVER_GET_NAMEW    EQUATE(1136) ! 0470
!WM_CAP_DRIVER_GET_VERSIONW    EQUATE(1137) ! 0471
!WM_CAP_FILE_GET_CAPTURE_FILEW    EQUATE(1145) ! 0479
!WM_CAP_FILE_SAVEASW    EQUATE(1147) ! 047b
!WM_CAP_FILE_SAVEDIBW    EQUATE(1149) ! 047d
!WM_CAP_FILE_SET_CAPTURE_FILEW    EQUATE(1144) ! 0478
!WM_CAP_GET_MCI_DEVICEW    EQUATE(1191) ! 04a7
!WM_CAP_PAL_OPENW    EQUATE(1204) ! 04b4
!WM_CAP_PAL_SAVEW    EQUATE(1205) ! 04b5
!WM_CAP_SET_CALLBACK_ERRORW    EQUATE(1126) ! 0466
!WM_CAP_SET_CALLBACK_STATUSW    EQUATE(1127) ! 0467
!WM_CAP_SET_MCI_DEVICEW    EQUATE(1190) ! 04a6
!WM_CAP_UNICODE_START    EQUATE(1124) ! 0464
!WM_CAPTURECHANGED    EQUATE(533) ! 0215
!WM_CHANGECBCHAIN    EQUATE(781) ! 030d
!WM_CHANGEUISTATE    EQUATE(295) ! 0127
!WM_CHAR    EQUATE(258) ! 0102
!WM_CHARTOITEM    EQUATE(47) ! 002f
!WM_CHILDACTIVATE    EQUATE(34) ! 0022
!WM_CHOOSEFONT_GETLOGFONT    EQUATE(1025) ! 0401
!WM_CHOOSEFONT_SETFLAGS    EQUATE(1126) ! 0466
!WM_CHOOSEFONT_SETLOGFONT    EQUATE(1125) ! 0465
!WM_CLEAR    EQUATE(771) ! 0303
!WM_CLOSE    EQUATE(16) ! 0010
!WM_COMMAND    EQUATE(273) ! 0111
!WM_COMMNOTIFY    EQUATE(68) ! 0044
!WM_COMPACTING    EQUATE(65) ! 0041
!WM_COMPAREITEM    EQUATE(57) ! 0039
!WM_CONTEXTMENU    EQUATE(123) ! 007b
!WM_CONVERTREQUEST    EQUATE(266) ! 010a
!WM_CONVERTRESULT    EQUATE(267) ! 010b
!WM_COPY    EQUATE(769) ! 0301
!WM_COPYDATA    EQUATE(74) ! 004a
!WM_COPYGLOBALDATA    EQUATE(73) ! 0049
!WM_CPL_LAUNCH    EQUATE(2024) ! 07e8
!WM_CPL_LAUNCHED    EQUATE(2025) ! 07e9
!WM_CREATE    EQUATE(1) ! 0001
!WM_CTLCOLOR    EQUATE(25) ! 0019
!WM_CTLCOLORBTN    EQUATE(309) ! 0135
!WM_CTLCOLORDLG    EQUATE(310) ! 0136
!WM_CTLCOLOREDIT    EQUATE(307) ! 0133
!WM_CTLCOLORLISTBOX    EQUATE(308) ! 0134
!WM_CTLCOLORMSGBOX    EQUATE(306) ! 0132
!WM_CTLCOLORSCROLLBAR    EQUATE(311) ! 0137
!WM_CTLCOLORSTATIC    EQUATE(312) ! 0138
!WM_CTLINIT    EQUATE(903) ! 0387
!WM_CUT    EQUATE(768) ! 0300
!WM_DEADCHAR    EQUATE(259) ! 0103
!WM_DELETEITEM    EQUATE(45) ! 002d
!WM_DESTROY    EQUATE(2) ! 0002
!WM_DESTROYCLIPBOARD    EQUATE(775) ! 0307
!WM_DEVICECHANGE    EQUATE(537) ! 0219
!WM_DEVMODECHANGE    EQUATE(27) ! 001b
!WM_DISPLAYCHANGE    EQUATE(126) ! 007e
!WM_DRAWCLIPBOARD    EQUATE(776) ! 0308
!WM_DRAWITEM    EQUATE(43) ! 002b
!WM_DROPFILES    EQUATE(563) ! 0233
!WM_ENABLE    EQUATE(10) ! 000a
!WM_ENDSESSION    EQUATE(22) ! 0016
!WM_ENTERIDLE    EQUATE(289) ! 0121
!WM_ENTERMENULOOP    EQUATE(529) ! 0211
!WM_ENTERSIZEMOVE    EQUATE(561) ! 0231
!WM_ERASEBKGND    EQUATE(20) ! 0014
!WM_EXITMENULOOP    EQUATE(530) ! 0212
!WM_EXITSIZEMOVE    EQUATE(562) ! 0232
!WM_FONTCHANGE    EQUATE(29) ! 001d
!WM_GETDLGCODE    EQUATE(135) ! 0087
!WM_GETFONT    EQUATE(49) ! 0031
!WM_GETHOTKEY    EQUATE(51) ! 0033
!WM_GETICON    EQUATE(127) ! 007f
!WM_GETMINMAXINFO    EQUATE(36) ! 0024
!WM_GETOBJECT    EQUATE(61) ! 003d
!WM_GETTEXT    EQUATE(13) ! 000d
!WM_GETTEXTLENGTH    EQUATE(14) ! 000e
!WM_GLOBALRCCHANGE    EQUATE(899) ! 0383
!WM_HANDHELDFIRST    EQUATE(856) ! 0358
!WM_HANDHELDLAST    EQUATE(863) ! 035f
!WM_HEDITCTL    EQUATE(901) ! 0385
!WM_HELP    EQUATE(83) ! 0053
!WM_HOOKRCRESULT    EQUATE(898) ! 0382
!WM_HOTKEY    EQUATE(786) ! 0312
!WM_HSCROLL    EQUATE(276) ! 0114
!WM_HSCROLLCLIPBOARD    EQUATE(782) ! 030e
!WM_ICONERASEBKGND    EQUATE(39) ! 0027
!WM_IME_CHAR    EQUATE(646) ! 0286
!WM_IME_COMPOSITION    EQUATE(271) ! 010f
!WM_IME_COMPOSITIONFULL    EQUATE(644) ! 0284
!WM_IME_CONTROL    EQUATE(643) ! 0283
!WM_IME_ENDCOMPOSITION    EQUATE(270) ! 010e
!WM_IME_KEYDOWN    EQUATE(656) ! 0290
!WM_IME_KEYLAST    EQUATE(271) ! 010f
!WM_IME_KEYUP    EQUATE(657) ! 0291
!WM_IME_NOTIFY    EQUATE(642) ! 0282
!WM_IME_REPORT    EQUATE(640) ! 0280
!WM_IME_REQUEST    EQUATE(648) ! 0288
!WM_IME_SELECT    EQUATE(645) ! 0285
!WM_IME_SETCONTEXT    EQUATE(641) ! 0281
!WM_IME_STARTCOMPOSITION    EQUATE(269) ! 010d
!WM_IMEKEYDOWN    EQUATE(656) ! 0290
!WM_IMEKEYUP    EQUATE(657) ! 0291
!WM_INITDIALOG    EQUATE(272) ! 0110
!WM_INITMENU    EQUATE(278) ! 0116
!WM_INITMENUPOPUP    EQUATE(279) ! 0117
!WM_INPUT    EQUATE(255) ! 00ff
!WM_INPUTLANGCHANGE    EQUATE(81) ! 0051
!WM_INPUTLANGCHANGEREQUEST    EQUATE(80) ! 0050
!WM_INTERIM    EQUATE(268) ! 010c
!WM_KEYDOWN    EQUATE(256) ! 0100
!WM_KEYFIRST    EQUATE(256) ! 0100
!WM_KEYLAST    EQUATE(264) ! 0108
!WM_KEYUP    EQUATE(257) ! 0101
!WM_KILLFOCUS    EQUATE(8) ! 0008
!WM_LBUTTONDBLCLK    EQUATE(515) ! 0203
!WM_LBUTTONDOWN    EQUATE(513) ! 0201
!WM_LBUTTONUP    EQUATE(514) ! 0202
!WM_MBUTTONDBLCLK    EQUATE(521) ! 0209
!WM_MBUTTONDOWN    EQUATE(519) ! 0207
!WM_MBUTTONUP    EQUATE(520) ! 0208
!WM_MDIACTIVATE    EQUATE(546) ! 0222
!WM_MDICASCADE    EQUATE(551) ! 0227
!WM_MDICREATE    EQUATE(544) ! 0220
!WM_MDIDESTROY    EQUATE(545) ! 0221
!WM_MDIGETACTIVE    EQUATE(553) ! 0229
!WM_MDIICONARRANGE    EQUATE(552) ! 0228
!WM_MDIMAXIMIZE    EQUATE(549) ! 0225
!WM_MDINEXT    EQUATE(548) ! 0224
!WM_MDIREFRESHMENU    EQUATE(564) ! 0234
!WM_MDIRESTORE    EQUATE(547) ! 0223
!WM_MDISETMENU    EQUATE(560) ! 0230
!WM_MDITILE    EQUATE(550) ! 0226
!WM_MEASUREITEM    EQUATE(44) ! 002c
!WM_MENUCHAR    EQUATE(288) ! 0120
!WM_MENUCOMMAND    EQUATE(294) ! 0126
!WM_MENUDRAG    EQUATE(291) ! 0123
!WM_MENUGETOBJECT    EQUATE(292) ! 0124
!WM_MENURBUTTONUP    EQUATE(290) ! 0122
!WM_MENUSELECT    EQUATE(287) ! 011f
!WM_MOUSEACTIVATE    EQUATE(33) ! 0021
!WM_MOUSEFIRST    EQUATE(512) ! 0200
!WM_MOUSEHOVER    EQUATE(673) ! 02a1
!WM_MOUSELAST    EQUATE(521) ! 0209
!WM_MOUSELEAVE    EQUATE(675) ! 02a3
!WM_MOUSEMOVE    EQUATE(512) ! 0200
!WM_MOUSEWHEEL    EQUATE(522) ! 020a
!WM_MOVE    EQUATE(3) ! 0003
!WM_MOVING    EQUATE(534) ! 0216
!WM_NCACTIVATE    EQUATE(134) ! 0086
!WM_NCCALCSIZE    EQUATE(131) ! 0083
!WM_NCCREATE    EQUATE(129) ! 0081
!WM_NCDESTROY    EQUATE(130) ! 0082
!WM_NCHITTEST    EQUATE(132) ! 0084
!WM_NCLBUTTONDBLCLK    EQUATE(163) ! 00a3
!WM_NCLBUTTONDOWN    EQUATE(161) ! 00a1
!WM_NCLBUTTONUP    EQUATE(162) ! 00a2
!WM_NCMBUTTONDBLCLK    EQUATE(169) ! 00a9
!WM_NCMBUTTONDOWN    EQUATE(167) ! 00a7
!WM_NCMBUTTONUP    EQUATE(168) ! 00a8
!WM_NCMOUSEHOVER    EQUATE(672) ! 02a0
!WM_NCMOUSELEAVE    EQUATE(674) ! 02a2
!WM_NCMOUSEMOVE    EQUATE(160) ! 00a0
!WM_NCPAINT    EQUATE(133) ! 0085
!WM_NCRBUTTONDBLCLK    EQUATE(166) ! 00a6
!WM_NCRBUTTONDOWN    EQUATE(164) ! 00a4
!WM_NCRBUTTONUP    EQUATE(165) ! 00a5
!WM_NCXBUTTONDBLCLK    EQUATE(173) ! 00ad
!WM_NCXBUTTONDOWN    EQUATE(171) ! 00ab
!WM_NCXBUTTONUP    EQUATE(172) ! 00ac
!WM_NEXTDLGCTL    EQUATE(40) ! 0028
!WM_NEXTMENU    EQUATE(531) ! 0213
!WM_NOTIFY    EQUATE(78) ! 004e
!WM_NOTIFYFORMAT    EQUATE(85) ! 0055
!WM_NULL    EQUATE(0) ! 0000
!WM_PAINT    EQUATE(15) ! 000f
!WM_PAINTCLIPBOARD    EQUATE(777) ! 0309
!WM_PAINTICON    EQUATE(38) ! 0026
!WM_PALETTECHANGED    EQUATE(785) ! 0311
!WM_PALETTEISCHANGING    EQUATE(784) ! 0310
!WM_PARENTNOTIFY    EQUATE(528) ! 0210
!WM_PASTE    EQUATE(770) ! 0302
!WM_PENCTL    EQUATE(901) ! 0385
!WM_PENEVENT    EQUATE(904) ! 0388
!WM_PENMISC    EQUATE(902) ! 0386
!WM_PENMISCINFO    EQUATE(899) ! 0383
!WM_PENWINFIRST    EQUATE(896) ! 0380
!WM_PENWINLAST    EQUATE(911) ! 038f
!WM_POWER    EQUATE(72) ! 0048
!WM_POWERBROADCAST    EQUATE(536) ! 0218
!WM_PRINT    EQUATE(791) ! 0317
!WM_PRINTCLIENT    EQUATE(792) ! 0318
!WM_PSD_ENVSTAMPRECT    EQUATE(1029) ! 0405
!WM_PSD_FULLPAGERECT    EQUATE(1025) ! 0401
!WM_PSD_GREEKTEXTRECT    EQUATE(1028) ! 0404
!WM_PSD_MARGINRECT    EQUATE(1027) ! 0403
!WM_PSD_MINMARGINRECT    EQUATE(1026) ! 0402
!WM_PSD_PAGESETUPDLG    EQUATE(1024) ! 0400
!WM_PSD_YAFULLPAGERECT    EQUATE(1030) ! 0406
!WM_QUERYDRAGICON    EQUATE(55) ! 0037
!WM_QUERYENDSESSION    EQUATE(17) ! 0011
!WM_QUERYNEWPALETTE    EQUATE(783) ! 030f
!WM_QUERYOPEN    EQUATE(19) ! 0013
!WM_QUERYUISTATE    EQUATE(297) ! 0129
!WM_QUEUESYNC    EQUATE(35) ! 0023
!WM_QUIT    EQUATE(18) ! 0012
!WM_RASDIALEVENT    EQUATE(52429) ! cccd
!WM_RBUTTONDBLCLK    EQUATE(518) ! 0206
!WM_RBUTTONDOWN    EQUATE(516) ! 0204
!WM_RBUTTONUP    EQUATE(517) ! 0205
!WM_RCRESULT    EQUATE(897) ! 0381
!WM_RENDERALLFORMATS    EQUATE(774) ! 0306
!WM_RENDERFORMAT    EQUATE(773) ! 0305
!WM_SETCURSOR    EQUATE(32) ! 0020
!WM_SETFOCUS    EQUATE(7) ! 0007
!WM_SETFONT    EQUATE(48) ! 0030
!WM_SETHOTKEY    EQUATE(50) ! 0032
!WM_SETICON    EQUATE(128) ! 0080
!WM_SETREDRAW    EQUATE(11) ! 000b
!WM_SETTEXT    EQUATE(12) ! 000c
!WM_SHOWWINDOW    EQUATE(24) ! 0018
!WM_SIZE    EQUATE(5) ! 0005
!WM_SIZECLIPBOARD    EQUATE(779) ! 030b
!WM_SIZING    EQUATE(532) ! 0214
!WM_SKB    EQUATE(900) ! 0384
!WM_SPOOLERSTATUS    EQUATE(42) ! 002a
!WM_STYLECHANGED    EQUATE(125) ! 007d
!WM_STYLECHANGING    EQUATE(124) ! 007c
!WM_SYNCPAINT    EQUATE(136) ! 0088
!WM_SYSCHAR    EQUATE(262) ! 0106
!WM_SYSCOLORCHANGE    EQUATE(21) ! 0015
!WM_SYSCOMMAND    EQUATE(274) ! 0112
!WM_SYSDEADCHAR    EQUATE(263) ! 0107
!WM_SYSKEYDOWN    EQUATE(260) ! 0104
!WM_SYSKEYUP    EQUATE(261) ! 0105
!WM_SYSTIMER    EQUATE(280) ! 0118
!WM_TCARD    EQUATE(82) ! 0052
!WM_TIMECHANGE    EQUATE(30) ! 001e
!WM_TIMER    EQUATE(275) ! 0113
!WM_UNDO    EQUATE(772) ! 0304
!WM_UNICHAR    EQUATE(265) ! 0109
!WM_UNINITMENUPOPUP    EQUATE(293) ! 0125
!WM_UPDATEUISTATE    EQUATE(296) ! 0128
!WM_USER    EQUATE(1024) ! 0400
!WM_USERCHANGED    EQUATE(84) ! 0054
!WM_VKEYTOITEM    EQUATE(46) ! 002e
!WM_VSCROLL    EQUATE(277) ! 0115
!WM_VSCROLLCLIPBOARD    EQUATE(778) ! 030a
!WM_WINDOWPOSCHANGED    EQUATE(71) ! 0047
!WM_WINDOWPOSCHANGING    EQUATE(70) ! 0046
!WM_WININICHANGE    EQUATE(26) ! 001a
!WM_WNT_CONVERTREQUESTEX    EQUATE(265) ! 0109
!WM_XBUTTONDBLCLK    EQUATE(525) ! 020d
!WM_XBUTTONDOWN    EQUATE(523) ! 020b
!WM_XBUTTONUP  EQUATE(524) ! 020c
!SM_CXSCREEN             Equate(0)
!SM_CYSCREEN             Equate(1)
!SM_CXVSCROLL            Equate(2)
!SM_CYHSCROLL            Equate(3)
!SM_CYCAPTION            Equate(4)
!SM_CXBORDER             Equate(5)
!SM_CYBORDER             Equate(6)
!SM_CXDLGFRAME           Equate(7)
!SM_CYDLGFRAME           Equate(8)
!SM_CYVTHUMB             Equate(9)
!SM_CXHTHUMB             Equate(10)
!SM_CXICON               Equate(11)
!SM_CYICON               Equate(12)
!SM_CXCURSOR             Equate(13)
!SM_CYCURSOR             Equate(14)
!SM_CYMENU               Equate(15)
!SM_CXFULLSCREEN         Equate(16)
!SM_CYFULLSCREEN         Equate(17)
!SM_CYKANJIWINDOW        Equate(18)
!SM_MOUSEPRESENT         Equate(19)
!SM_CYVSCROLL            Equate(20)
!SM_CXHSCROLL            Equate(21)
!SM_DEBUG                Equate(22)
!SM_SWAPBUTTON           Equate(23)
!SM_RESERVED1            Equate(24)
!SM_RESERVED2            Equate(25)
!SM_RESERVED3            Equate(26)
!SM_RESERVED4            Equate(27)
!SM_CXMIN                Equate(28)
!SM_CYMIN                Equate(29)
!SM_CXSIZE               Equate(30)
!SM_CYSIZE               Equate(31)
!SM_CXFRAME              Equate(32)
!SM_CYFRAME              Equate(33)
!SM_CXMINTRACK           Equate(34)
!SM_CYMINTRACK           Equate(35)
!SM_CXDOUBLECLK          Equate(36)
!SM_CYDOUBLECLK          Equate(37)
!SM_CXICONSPACING        Equate(38)
!SM_CYICONSPACING        Equate(39)
!SM_MENUDROPALIGNMENT    Equate(40)
!SM_PENWINDOWS           Equate(41)
!SM_DBCSENABLED          Equate(42)
!SM_CMOUSEBUTTONS        Equate(43)
!SM_CXFIXEDFRAME            Equate(SM_CXDLGFRAME)  !/* ;win40 name change */
!SM_CYFIXEDFRAME            Equate(SM_CYDLGFRAME)  !/* ;win40 name change */
!SM_CXSIZEFRAME             Equate(SM_CXFRAME)     !/* ;win40 name change */
!SM_CYSIZEFRAME             Equate(SM_CYFRAME)     !/* ;win40 name change */
!!SM_CYFIXEDFRAME
!SM_SECURE               Equate(44)
!SM_CXEDGE               Equate(45)
!SM_CYEDGE               Equate(46)
!SM_CXMINSPACING         Equate(47)
!SM_CYMINSPACING         Equate(48)
!SM_CXSMICON             Equate(49)
!SM_CYSMICON             Equate(50)
!SM_CYSMCAPTION          Equate(51)
!SM_CXSMSIZE             Equate(52)
!SM_CYSMSIZE             Equate(53)
!SM_CXMENUSIZE           Equate(54)
!SM_CYMENUSIZE           Equate(55)
!SM_ARRANGE              Equate(56)
!SM_CXMINIMIZED          Equate(57)
!SM_CYMINIMIZED          Equate(58)
!SM_CXMAXTRACK           Equate(59)
!SM_CYMAXTRACK           Equate(60)
!SM_CXMAXIMIZED          Equate(61)
!SM_CYMAXIMIZED          Equate(62)
!SM_NETWORK              Equate(63)
!SM_CLEANBOOT            Equate(67)
!SM_CXDRAG               Equate(68)
!SM_CYDRAG               Equate(69)
!SM_SHOWSOUNDS           Equate(70)
!SM_CXMENUCHECK          Equate(71)
!SM_CYMENUCHECK          Equate(72)
!SM_SLOWMACHINE          Equate(73)
!SM_MIDEASTENABLED       Equate(74)
!SM_MOUSEWHEELPRESENT    Equate(75)
!SM_XVIRTUALSCREEN       Equate(76)
!SM_YVIRTUALSCREEN       Equate(77)
!SM_CXVIRTUALSCREEN      Equate(78)
!SM_CYVIRTUALSCREEN      Equate(79)
!SM_CMONITORS            Equate(80)
!SM_SAMEDISPLAYFORMAT    Equate(81)
!SM_IMMENABLED           Equate(82)
!SM_CXFOCUSBORDER        Equate(83)
!SM_CYFOCUSBORDER        Equate(84)
!SM_CMETRICS         Equate(86)
SM_CXPADDEDBORDER equate(92)
!SM_REMOTESESSION        Equate(1000h)
!SM_SHUTTINGDOWN         Equate(2000h)
!! * AppWM_ACTIVATE state values
!! */
!!    WA_INACTIVE     0
!!    WA_ACTIVE       1
!!    WA_CLICKACTIVE  2
!
!WA_INACTIVE     Equate(0)
!WA_ACTIVE       Equate(1)
!WA_CLICKACTIVE  Equate(2)
!
!
!
!! * Parameter for SystemParametersInfo()
!! */
!
!SPI_GETBEEP                 Equate(0001h)
!SPI_SETBEEP                 Equate(0002h)
!SPI_GETMOUSE                Equate(0003h)
!SPI_SETMOUSE                Equate(0004h)
!SPI_GETBORDER               Equate(0005h)
!SPI_SETBORDER               Equate(0006h)
!SPI_GETKEYBOARDSPEED        Equate(000Ah)
!SPI_SETKEYBOARDSPEED        Equate(000Bh)
!SPI_LANGDRIVER              Equate(000Ch)
!SPI_ICONHORIZONTALSPACING   Equate(000Dh)
!SPI_GETSCREENSAVETIMEOUT    Equate(000Eh)
!SPI_SETSCREENSAVETIMEOUT    Equate(000Fh)
!SPI_GETSCREENSAVEACTIVE     Equate(0010h)
!SPI_SETSCREENSAVEACTIVE     Equate(0011h)
!SPI_GETGRIDGRANULARITY      Equate(0012h)
!SPI_SETGRIDGRANULARITY      Equate(0013h)
!SPI_SETDESKWALLPAPER        Equate(0014h)
!SPI_SETDESKPATTERN          Equate(0015h)
!SPI_GETKEYBOARDDELAY        Equate(0016h)
!SPI_SETKEYBOARDDELAY        Equate(0017h)
!SPI_ICONVERTICALSPACING     Equate(0018h)
!SPI_GETICONTITLEWRAP        Equate(0019h)
!SPI_SETICONTITLEWRAP        Equate(001Ah)
!SPI_GETMENUDROPALIGNMENT    Equate(001Bh)
!SPI_SETMENUDROPALIGNMENT    Equate(001Ch)
!SPI_SETDOUBLECLKWIDTH       Equate(001Dh)
!SPI_SETDOUBLECLKHEIGHT      Equate(001Eh)
!SPI_GETICONTITLELOGFONT     Equate(001Fh)
!SPI_SETDOUBLECLICKTIME      Equate(0020h)
!SPI_SETMOUSEBUTTONSWAP      Equate(0021h)
!SPI_SETICONTITLELOGFONT     Equate(0022h)
!SPI_GETFASTTASKSWITCH       Equate(0023h)
!SPI_SETFASTTASKSWITCH       Equate(0024h)
!SPI_SETDRAGFULLWINDOWS      Equate(0025h)
!SPI_GETDRAGFULLWINDOWS      Equate(0026h)
!SPI_GETNONCLIENTMETRICS     Equate(0029h)
!SPI_SETNONCLIENTMETRICS     Equate(002Ah)
!SPI_GETMINIMIZEDMETRICS     Equate(002Bh)
!SPI_SETMINIMIZEDMETRICS     Equate(002Ch)
!SPI_GETICONMETRICS          Equate(002Dh)
!SPI_SETICONMETRICS          Equate(002Eh)
!SPI_SETWORKAREA             Equate(002Fh)
!SPI_GETWORKAREA             Equate(0030h)
!SPI_SETPENWINDOWS           Equate(0031h)
!SPI_GETHIGHCONTRAST         Equate(0042h)
!SPI_SETHIGHCONTRAST         Equate(0043h)
!SPI_GETKEYBOARDPREF         Equate(0044h)
!SPI_SETKEYBOARDPREF         Equate(0045h)
!SPI_GETSCREENREADER         Equate(0046h)
!SPI_SETSCREENREADER         Equate(0047h)
!SPI_GETANIMATION            Equate(0048h)
!SPI_SETANIMATION            Equate(0049h)
!SPI_GETFONTSMOOTHING        Equate(004Ah)
!SPI_SETFONTSMOOTHING        Equate(004Bh)
!SPI_SETDRAGWIDTH            Equate(004Ch)
!SPI_SETDRAGHEIGHT           Equate(004Dh)
!SPI_SETHANDHELD             Equate(004Eh)
!SPI_GETLOWPOWERTIMEOUT      Equate(004Fh)
!SPI_GETPOWEROFFTIMEOUT      Equate(0050h)
!SPI_SETLOWPOWERTIMEOUT      Equate(0051h)
!SPI_SETPOWEROFFTIMEOUT      Equate(0052h)
!SPI_GETLOWPOWERACTIVE       Equate(0053h)
!SPI_GETPOWEROFFACTIVE       Equate(0054h)
!SPI_SETLOWPOWERACTIVE       Equate(0055h)
!SPI_SETPOWEROFFACTIVE       Equate(0056h)
!SPI_SETCURSORS              Equate(0057h)
!SPI_SETICONS                Equate(0058h)
!SPI_GETDEFAULTINPUTLANG     Equate(0059h)
!SPI_SETDEFAULTINPUTLANG     Equate(005Ah)
!SPI_SETLANGTOGGLE           Equate(005Bh)
!SPI_GETWINDOWSEXTENSION     Equate(005Ch)
!SPI_SETMOUSETRAILS          Equate(005Dh)
!SPI_GETMOUSETRAILS          Equate(005Eh)
!SPI_SETSCREENSAVERRUNNING   Equate(0061h)
!SPI_SCREENSAVERRUNNING     Equate(0061h) !SPI_SETSCREENSAVERRUNNING
!SPI_GETFILTERKEYS          Equate(0032h)
!SPI_SETFILTERKEYS          Equate(0033h)
!SPI_GETTOGGLEKEYS          Equate(0034h)
!SPI_SETTOGGLEKEYS          Equate(0035h)
!SPI_GETMOUSEKEYS           Equate(0036h)
!SPI_SETMOUSEKEYS           Equate(0037h)
!SPI_GETSHOWSOUNDS          Equate(0038h)
!SPI_SETSHOWSOUNDS          Equate(0039h)
!SPI_GETSTICKYKEYS          Equate(003Ah)
!SPI_SETSTICKYKEYS          Equate(003Bh)
!SPI_GETACCESSTIMEOUT       Equate(003Ch)
!SPI_SETACCESSTIMEOUT       Equate(003Dh)
!SPI_GETSERIALKEYS          Equate(003Eh)
!SPI_SETSERIALKEYS          Equate(003Fh)
!SPI_GETSOUNDSENTRY         Equate(0040h)
!SPI_SETSOUNDSENTRY         Equate(0041h)
!SPI_GETSNAPTODEFBUTTON     Equate(005Fh)
!SPI_SETSNAPTODEFBUTTON     Equate(0060h)
!SPI_GETMOUSEHOVERWIDTH     Equate(0062h)
!SPI_SETMOUSEHOVERWIDTH     Equate(0063h)
!SPI_GETMOUSEHOVERHEIGHT    Equate(0064h)
!SPI_SETMOUSEHOVERHEIGHT    Equate(0065h)
!SPI_GETMOUSEHOVERTIME      Equate(0066h)
!SPI_SETMOUSEHOVERTIME      Equate(0067h)
!SPI_GETWHEELSCROLLLINES    Equate(0068h)
!SPI_SETWHEELSCROLLLINES    Equate(0069h)
!SPI_GETMENUSHOWDELAY       Equate(006Ah)
!SPI_SETMENUSHOWDELAY       Equate(006Bh)
!SPI_GETSHOWIMEUI          Equate(006Eh)
!SPI_SETSHOWIMEUI          Equate(006Fh)
!SPI_GETMOUSESPEED         Equate(0070h)
!SPI_SETMOUSESPEED         Equate(0071h)
!SPI_GETSCREENSAVERRUNNING Equate(0072h)
!SPI_GETDESKWALLPAPER      Equate(0073h)
!SPI_GETACTIVEWINDOWTRACKING         Equate(1000h)
!SPI_SETACTIVEWINDOWTRACKING         Equate(1001h)
!SPI_GETMENUANIMATION                Equate(1002h)
!SPI_SETMENUANIMATION                Equate(1003h)
!SPI_GETCOMBOBOXANIMATION            Equate(1004h)
!SPI_SETCOMBOBOXANIMATION            Equate(1005h)
!SPI_GETLISTBOXSMOOTHSCROLLING       Equate(1006h)
!SPI_SETLISTBOXSMOOTHSCROLLING       Equate(1007h)
!SPI_GETGRADIENTCAPTIONS             Equate(1008h)
!SPI_SETGRADIENTCAPTIONS             Equate(1009h)
!SPI_GETKEYBOARDCUES                 Equate(100Ah)
!SPI_SETKEYBOARDCUES                 Equate(100Bh)
!SPI_GETMENUUNDERLINES               Equate(100Ah)!SPI_GETKEYBOARDCUES
!SPI_SETMENUUNDERLINES               Equate(100Bh)!SPI_SETKEYBOARDCUES
!SPI_GETACTIVEWNDTRKZORDER           Equate(100Ch)
!SPI_SETACTIVEWNDTRKZORDER           Equate(100Dh)
!SPI_GETHOTTRACKING                  Equate(100Eh)
!SPI_SETHOTTRACKING                  Equate(100Fh)
!SPI_GETMENUFADE                     Equate(1012h)
!SPI_SETMENUFADE                     Equate(1013h)
!SPI_GETSELECTIONFADE                Equate(1014h)
!SPI_SETSELECTIONFADE                Equate(1015h)
!SPI_GETTOOLTIPANIMATION             Equate(1016h)
!SPI_SETTOOLTIPANIMATION             Equate(1017h)
!SPI_GETTOOLTIPFADE                  Equate(1018h)
!SPI_SETTOOLTIPFADE                  Equate(1019h)
!SPI_GETCURSORSHADOW                 Equate(101Ah)
!SPI_SETCURSORSHADOW                 Equate(101Bh)
!SPI_GETMOUSESONAR                   Equate(101Ch)
!SPI_SETMOUSESONAR                   Equate(101Dh)
!SPI_GETMOUSECLICKLOCK               Equate(101Eh)
!SPI_SETMOUSECLICKLOCK               Equate(101Fh)
!SPI_GETMOUSEVANISH                  Equate(1020h)
!SPI_SETMOUSEVANISH                  Equate(1021h)
!SPI_GETFLATMENU                     Equate(1022h)
!SPI_SETFLATMENU                     Equate(1023h)
!SPI_GETDROPSHADOW                   Equate(1024h)
!SPI_SETDROPSHADOW                   Equate(1025h)
!SPI_GETUIEFFECTS                    Equate(103Eh)
!SPI_SETUIEFFECTS                    Equate(103Fh)
!SPI_GETFOREGROUNDLOCKTIMEOUT        Equate(2000h)
!SPI_SETFOREGROUNDLOCKTIMEOUT        Equate(2001h)
!SPI_GETACTIVEWNDTRKTIMEOUT          Equate(2002h)
!SPI_SETACTIVEWNDTRKTIMEOUT          Equate(2003h)
!SPI_GETFOREGROUNDFLASHCOUNT         Equate(2004h)
!SPI_SETFOREGROUNDFLASHCOUNT         Equate(2005h)
!SPI_GETCARETWIDTH                   Equate(2006h)
!SPI_SETCARETWIDTH                   Equate(2007h)
!SPI_GETMOUSECLICKLOCKTIME           Equate(2008h)
!SPI_SETMOUSECLICKLOCKTIME           Equate(2009h)
!SPI_GETFONTSMOOTHINGTYPE            Equate(200Ah)
!SPI_SETFONTSMOOTHINGTYPE            Equate(200Bh)
!FE_FONTSMOOTHINGSTANDARD            Equate(0001h)
!FE_FONTSMOOTHINGCLEARTYPE           Equate(0002h)
!FE_FONTSMOOTHINGDOCKING             Equate(8000h)
!SPI_GETFONTSMOOTHINGCONTRAST        Equate(200Ch)
!SPI_SETFONTSMOOTHINGCONTRAST        Equate(200Dh)
!SPI_GETFOCUSBORDERWIDTH             Equate(200Eh)
!SPI_SETFOCUSBORDERWIDTH             Equate(200Fh)
!SPI_GETFOCUSBORDERHEIGHT            Equate(2010h)
!SPI_SETFOCUSBORDERHEIGHT            Equate(2011h)
!
!!SWP_FRAMECHANGED    EQUATE(020h)
!SWPDRAWFRAME equate(020h) !Draws a frame (defined in the window's class description) around the window. Same as the SWPFRAMECHANGED flag.
!SWPFRAMECHANGED equate(0020h) ! Sends a WM_NCCALCSIZE message to the window, even if the window's size is not being changed. If this flag is not specified, WM_NCCALCSIZE is sent only when the window's size is being changed.
!SWPHIDEWINDOW equate(080h) !Hides the window.
!SWPNOACTIVATE equate(010h) !Does not activate the window. If this flag is not set, the window is activated and moved to the top of either the topmost or non-topmost group (depending on the setting of the hwndInsertAfter member).
!SWPNOCOPYBITS equate(0100h) !Discards the entire contents of the client area. If this flag is not specified, the valid contents of the client area are saved and copied back into the client area after the window is sized or repositioned.
!SWPNOMOVE equate(02h) !Retains the current position (ignores the x and y members).
!SWPNOOWNERZORDER equate(0200h) !Does not change the owner window's position in the Z order.
!SWPNOREDRAW equate(08h) !Does not redraw changes. If this flag is set, no repainting of any kind occurs. This applies to the client area, the nonclient area (including the title bar and scroll bars), and any part of the parent window uncovered as a result of the window being moved. When this flag is set, the application must explicitly invalidate or redraw any parts of the window and parent window that need redrawing.
!SWPNOREPOSITION equate(0200h) !Does not change the owner window's position in the Z order. Same as the SWPNOOWNERZORDER flag.
!SWPNOSENDCHANGING equate(0400h) !Prevents the window from receiving the WM_WINDOWPOSCHANGING message.
!SWPNOSIZE equate(01) !Retains the current size (ignores the cx and cy members).
!SWPNOZORDER equate(04h) !Retains the current Z order (ignores the hwndInsertAfter member).
!SWPSHOWWINDOW      equate(040h) !Displays the window.
!
!
DTT_TEXTCOLOR   equate(01)
DTT_BORDERCOLOR   equate(02)
DTT_SHADOWCOLOR   equate(04)
DTT_SHADOWTYPE   equate(08)
DTT_SHADOWOFFSET   equate(010)
DTT_BORDERSIZE   equate(020)
DTT_FONTPROP   equate(040)
DTT_COLORPROP   equate(080)
DTT_STATEID   equate(0100)
DTT_CALCRECT   equate(0200)
DTT_APPLYOVERLAY   equate(0400)
DTT_GLOWSIZE   equate(0800)
DTT_CALLBACK   equate(01000)
DTT_COMPOSITED      equate(02000)


DIRECTORY_QUERY                                     equate(01h)
DIRECTORY_TRAVERSE                                  equate(02h)
GET_STORAGE_DEPENDENCY_FLAG_DISK_HANDLE             equate(2)
GET_STORAGE_DEPENDENCY_FLAG_HOST_VOLUMES            equate(1)
DEPENDENT_DISK_FLAG_FULLY_ALLOCATED                 equate(2)
DEPENDENT_DISK_FLAG_MULT_BACKING_FILES              equate(1)
DEPENDENT_DISK_FLAG_NO_DRIVE_LETTER                 equate(128)
DEPENDENT_DISK_FLAG_NO_HOST_DISK                    equate(512)
DEPENDENT_DISK_FLAG_NONE                            equate(0)
DEPENDENT_DISK_FLAG_PARENT                          equate(256)
DEPENDENT_DISK_FLAG_PERMANENT_LIFETIME              equate(1024)
DEPENDENT_DISK_FLAG_READ_ONLY                       equate(4)
DEPENDENT_DISK_FLAG_REMOTE                          equate(8)
DEPENDENT_DISK_FLAG_REMOVABLE                       equate(64)
DEPENDENT_DISK_FLAG_SYSTEM_VOLUME                   equate(16)
DEPENDENT_DISK_FLAG_SYSTEM_VOLUME_PARENT    equate(32)


LCMAP_UPPERCASE     EQUATE(0200h)
CP_UTF16            EQUATE(65002)
ERROR_NO_MORE_FILES EQUATE(18)
UTF16Code001        EQUATE(7764)


!
!!/* GetDCEx flags*/
!DCX_WINDOW           EQUATE(000000001h)
!DCX_CACHE            EQUATE(000000002h)
!DCX_NORESETATTRS     EQUATE(000000004h)
!DCX_CLIPCHILDREN     EQUATE(000000008h)
!DCX_CLIPSIBLINGS     EQUATE(000000010h)
!DCX_PARENTCLIP       EQUATE(000000020h)
!DCX_EXCLUDERGN       EQUATE(000000040h)
!DCX_INTERSECTRGN     EQUATE(000000080h)
!DCX_EXCLUDEUPDATE    EQUATE(000000100h)
!DCX_INTERSECTUPDATE  EQUATE(000000200h)
!DCX_LOCKWINDOWUPDATE EQUATE(000000400h)
!DCX_VALIDATE         EQUATE(000200000h)
!DCX_DEFAULTCLIP      EQUATE(080000000h) !	/* microwin only*/
!!/* Binary raster ops */
!R2_BLACK            EQUATE(1 )  !/*  0       */
!R2_NOTMERGEPEN      EQUATE(2 )  !/* DPon     */
!R2_MASKNOTPEN       EQUATE(3 )  !/* DPna     */
!R2_NOTCOPYPEN       EQUATE(4 )  !/* PN       */
!R2_MASKPENNOT       EQUATE(5 )  !/* PDna     */
!R2_NOT              EQUATE(6 )  !/* Dn       */
!R2_XORPEN           EQUATE(7 )  !/* DPx      */
!R2_NOTMASKPEN       EQUATE(8 )  !/* DPan     */
!R2_MASKPEN          EQUATE(9 )  !/* DPa      */
!R2_NOTXORPEN        EQUATE(10)  !/* DPxn     */
!R2_NOP              EQUATE(11)  !/* D        */
!R2_MERGENOTPEN      EQUATE(12)  !/* DPno     */
!R2_COPYPEN          EQUATE(13)  !/* P        */
!R2_MERGEPENNOT      EQUATE(14)  !/* PDno     */
!R2_MERGEPEN         EQUATE(15)  !/* DPo      */
!R2_WHITE            EQUATE(16)  !/*  1       */
!R2_LAST             EQUATE(16)
!
!!/* Ternary raster operations */
!SRCCOPY             EQUATE(000CC0020h) !/* dest = source                   */
!SRCPAINT            EQUATE(000EE0086h) !/* dest = source OR dest           */
!SRCAND              EQUATE(0008800C6h) !/* dest = source AND dest          */
!SRCINVERT           EQUATE(000660046h) !/* dest = source XOR dest          */
!SRCERASE            EQUATE(000440328h) !/* dest = source AND (NOT dest )   */
!NOTSRCCOPY          EQUATE(000330008h) !/* dest = (NOT source)             */
!NOTSRCERASE         EQUATE(0001100A6h) !/* dest = (NOT src) AND (NOT dest) */
!MERGECOPY           EQUATE(000C000CAh) !/* dest = (source AND pattern)     */
!MERGEPAINT          EQUATE(000BB0226h) !/* dest = (NOT source) OR dest     */
!PATCOPY             EQUATE(000F00021h) !/* dest = pattern                  */
!PATPAINT            EQUATE(000FB0A09h) !/* dest = DPSnoo                   */
!PATINVERT           EQUATE(0005A0049h) !/* dest = pattern XOR dest         */
!DSTINVERT           EQUATE(000550009h) !/* dest = (NOT dest)               */
!BLACKNESS           EQUATE(000000042h) !/* dest = BLACK                    */
!WHITENESS           EQUATE(000FF0062h) !/* dest = WHITE                    */
!!#if(WINVER >= 0x0500)
!
!NOMIRRORBITMAP      EQUATE(080000000h) !/* Do not Mirror the bitmap in this call */
!CAPTUREBLT          EQUATE(040000000h) !/* Include layered windows */
!!#endif !/* WINVER >= 0x0500 */
!
!!/* Quaternary raster codes */
!!MAKEROP4(fore,back) (DWORD)((((back) << 8) & 0xFF000000) | (fore))
!
!!#endif !/* NORASTEROPS */
RGN_AND EQUATE(01h)
RGN_OR EQUATE(02h)
RGN_XOR EQUATE(03h)
RGN_DIFF EQUATE(04h)
RGN_COPY EQUATE(05h)
!!WindowStyles
!WS_OVERLAPPED       EQUATE(000000000h)
!WS_POPUP        EQUATE(080000000h)
!WS_CHILD        EQUATE(040000000h)
!WS_MINIMIZE     EQUATE(020000000h)
!WS_VISIBLE      EQUATE(010000000h)
!WS_DISABLED     EQUATE(008000000h)
!WS_CLIPSIBLINGS     EQUATE(004000000h)
!WS_CLIPCHILDREN     EQUATE(002000000h)
!WS_MAXIMIZE     EQUATE(001000000h)
!WS_CAPTION      EQUATE(000C00000h)    ! /* WS_BORDER + WS_DLGFRAME  */
!WS_BORDER       EQUATE(000800000h)
!WS_DLGFRAME     EQUATE(000400000h)
!WS_VSCROLL      EQUATE(000200000h)
!WS_HSCROLL      EQUATE(000100000h)
!WS_SYSMENU      EQUATE(000080000h)
!WS_THICKFRAME       EQUATE(000040000h)
!WS_GROUP        EQUATE(000020000h)
!WS_TABSTOP      EQUATE(000010000h)
!
!WS_MINIMIZEBOX      EQUATE(000020000h)
!WS_MAXIMIZEBOX      EQUATE(000010000h)
!
!WS_TILED        EQUATE(WS_OVERLAPPED)
!WS_ICONIC       EQUATE(WS_MINIMIZE)
!WS_SIZEBOX      EQUATE(WS_THICKFRAME)
!
!
!!!!// Common Window Styles
!
!WS_OVERLAPPEDWINDOW  EQUATE(WS_OVERLAPPED + WS_CAPTION + WS_SYSMENU + WS_THICKFRAME + WS_MINIMIZEBOX + WS_MAXIMIZEBOX )
!
!WS_POPUPWINDOW  EQUATE(WS_POPUP + WS_BORDER + WS_SYSMENU )
!
!WS_CHILDWINDOW  EQUATE(WS_CHILD)
!
!!!!//Extended Window Styles
!
!WS_EX_DLGMODALFRAME     EQUATE(000000001h)
!WS_EX_NOPARENTNOTIFY    EQUATE(000000004h)
!WS_EX_TOPMOST       EQUATE(000000008h)
!WS_EX_ACCEPTFILES       EQUATE(000000010h)
!WS_EX_TRANSPARENT       EQUATE(000000020h)
!
!!!!//#if(WINVER >EQUATE(00400)
!WS_EX_MDICHILD      EQUATE(000000040h)
!WS_EX_TOOLWINDOW    EQUATE(000000080h)
!WS_EX_WINDOWEDGE    EQUATE(000000100h)
!WS_EX_CLIENTEDGE    EQUATE(000000200h)
!WS_EX_CONTEXTHELP       EQUATE(000000400h)
!
!WS_EX_RIGHT         EQUATE(000001000h)
!WS_EX_LEFT          EQUATE(000000000h)
!WS_EX_RTLREADING    EQUATE(000002000h)
!WS_EX_LTRREADING    EQUATE(000000000h)
!WS_EX_LEFTSCROLLBAR     EQUATE(000004000h)
!WS_EX_RIGHTSCROLLBAR    EQUATE(000000000h)
!
!WS_EX_CONTROLPARENT     EQUATE(000010000h)
!WS_EX_STATICEDGE    EQUATE(000020000h)
!WS_EX_APPWINDOW     EQUATE(000040000h)
!
!WS_EX_OVERLAPPEDWINDOW  EQUATE(WS_EX_WINDOWEDGE + WS_EX_CLIENTEDGE)
!WS_EX_PALETTEWINDOW     EQUATE(WS_EX_WINDOWEDGE + WS_EX_TOOLWINDOW + WS_EX_TOPMOST)
!!!//#endif /* WINVER >EQUATE(00400 */
!
!!!!//#if(_WIN32_WINNT >EQUATE(00500)
WS_EX_LAYERED       EQUATE(000080000h)
!!!!//#endif /* _WIN32_WINNT >EQUATE(00500 */
!
!!!!//#if(WINVER >EQUATE(00500)
!WS_EX_NOINHERITLAYOUT   EQUATE(000100000h) !!// Disable inheritence of mirroring by children
!WS_EX_LAYOUTRTL     EQUATE(000400000h) !!// Right to left mirroring
!!!!//#endif /* WINVER >EQUATE(00500 */
!
!!!!//#if(_WIN32_WINNT >EQUATE(00500)
WS_EX_COMPOSITED    EQUATE(002000000h)
!WS_EX_NOACTIVATE    EQUATE(008000000h)
!!!!//#endif /* _WIN32_WINNT >EQUATE(00500 */
!
!
!!WS_OVERLAPPED      EQUATE(000000000h)
!!WS_POPUP           EQUATE(080000000h)
!!WS_CHILD           EQUATE(040000000h)
!!WS_MINIMIZE        EQUATE(020000000h)
!!WS_VISIBLE         EQUATE(010000000h)
!!WS_DISABLED        EQUATE(008000000h)
!!WS_CLIPSIBLINGS    EQUATE(004000000h)
!!WS_CLIPCHILDREN    EQUATE(002000000h)
!!WS_MAXIMIZE        EQUATE(001000000h)
!!WS_BORDER          EQUATE(000800000h)
!!WS_DLGFRAME        EQUATE(000400000h)
!!WS_VSCROLL         EQUATE(000200000h)
!!WS_HSCROLL         EQUATE(000100000h)
!!WS_SYSMENU         EQUATE(000080000h)
!!WS_THICKFRAME      EQUATE(000040000h)
!!WS_GROUP           EQUATE(000020000h)
!!WS_TABSTOP         EQUATE(000010000h)
!
!!WS_MINIMIZEBOX     EQUATE(000020000h)
!!WS_MAXIMIZEBOX     EQUATE(000010000h)
!!
!!WS_CAPTION         EQUATE(WS_BORDER + WS_DLGFRAME)
!!WS_TILED           EQUATE(WS_OVERLAPPED)
!!WS_ICONIC          EQUATE(WS_MINIMIZE)
!!WS_SIZEBOX         EQUATE(WS_THICKFRAME)
!!WS_TILEDWINDOW     EQUATE(WS_OVERLAPPEDWINDOW)
!!
!!WS_OVERLAPPEDWINDOW    EQUATE(WS_OVERLAPPED + WS_CAPTION + WS_SYSMENU + WS_THICKFRAME + WS_MINIMIZEBOX + WS_MAXIMIZEBOX)
!!WS_POPUPWINDOW     EQUATE(WS_POPUP + WS_BORDER + WS_SYSMENU)
!!WS_CHILDWINDOW     EQUATE(WS_CHILD)
!!
!!!!!//Extended Window Styles
!!
!!WS_EX_DLGMODALFRAME    EQUATE(000000001h)
!!WS_EX_NOPARENTNOTIFY   EQUATE(000000004h)
!!WS_EX_TOPMOST      EQUATE(000000008h)
!!WS_EX_ACCEPTFILES      EQUATE(000000010h)
!!WS_EX_TRANSPARENT      EQUATE(000000020h)
!!
!!!!!//#if(WINVER >EQUATE(00400)
!!
!!WS_EX_MDICHILD     EQUATE(000000040h)
!!WS_EX_TOOLWINDOW       EQUATE(000000080h)
!!WS_EX_WINDOWEDGE       EQUATE(000000100h)
!!WS_EX_CLIENTEDGE       EQUATE(000000200h)
!!WS_EX_CONTEXTHELP      EQUATE(000000400h)
!!
!!WS_EX_RIGHT        EQUATE(000001000h)
!!WS_EX_LEFT         EQUATE(000000000h)
!!WS_EX_RTLREADING       EQUATE(000002000h)
!!WS_EX_LTRREADING       EQUATE(000000000h)
!!WS_EX_LEFTSCROLLBAR    EQUATE(000004000h)
!!WS_EX_RIGHTSCROLLBAR   EQUATE(000000000h)
!!
!!WS_EX_CONTROLPARENT    EQUATE(000010000h)
!!WS_EX_STATICEDGE       EQUATE(000020000h)
!!WS_EX_APPWINDOW    EQUATE(000040000h)
!!
!!WS_EX_OVERLAPPEDWINDOW EQUATE(WS_EX_WINDOWEDGE + WS_EX_CLIENTEDGE)
!!WS_EX_PALETTEWINDOW    EQUATE(WS_EX_WINDOWEDGE + WS_EX_TOOLWINDOW + WS_EX_TOPMOST)
!!!!!//#endif /* WINVER >EQUATE(00400 */
!!
!!!!!//#if(WIN32WINNT >EQUATE(00500)
!!
!!WS_EX_LAYERED      EQUATE(000080000h)
!!!!!//#endif /* WIN32WINNT >EQUATE(00500 */
!!
!!!!!//#if(WINVER >EQUATE(00500)
!!
!!WS_EX_NOINHERITLAYOUT  EQUATE(000100000h) !!// Disable inheritence of mirroring by children
!!WS_EX_LAYOUTRTL    EQUATE(000400000h) !!// Right to left mirroring
!!!!!//#endif /* WINVER >EQUATE(00500 */
!!
!!!!!//#if(WIN32WINNT >EQUATE(00500)
!!
!!WS_EX_COMPOSITED       EQUATE(002000000h)
!!WS_EX_NOACTIVATE       EQUATE(008000000
!!!!!//#endif /* WIN32WINNT >EQUATE(00500 */
!!
!!WS_TILEDWINDOW  EQUATE(WS_OVERLAPPEDWINDOW)
!!enum htnames
!
HTERROR EQUATE( -2 )
HTTRANSPARENT EQUATE( -1 )
HTNOWHERE EQUATE( 0 )
HTCLIENT EQUATE( 1 )
HTCAPTION EQUATE( 2 )
HTSYSMENU EQUATE(3  )
HTGROWBOX EQUATE( 4 )
HTMENU EQUATE( 5 )
HTHSCROLL EQUATE( 6 )
HTVSCROLL EQUATE(7  )
HTMINBUTTON EQUATE( 8 )
HTMAXBUTTON EQUATE( 9 )
HTLEFT EQUATE( 10 )
HTRIGHT EQUATE( 11 )
HTTOP EQUATE( 12 )
HTTOPLEFT EQUATE( 13 )
HTTOPRIGHT EQUATE( 14 )
HTBOTTOM EQUATE( 15 )
HTBOTTOMLEFT EQUATE( 16 )
HTBOTTOMRIGHT EQUATE(17  )
HTBORDER EQUATE( 18 )
HTOBJECT EQUATE(19  )
HTCLOSE EQUATE( 20 )
HTHELP EQUATE( 21 )
HTWITHINAPPEXT EQUATE(100)
HTWITHINAPP         EQUATE(101)
HTWITHINCLIENTSPACE EQUATE(102)
HTWITHINCLIENTNOMOVESPACE   EQUATE(102)
HTOUTSIDEAPPEXT EQUATE(103)
HTOUTSIDEAPP        EQUATE(104)
HTINSIDEAPP        EQUATE(105)
HTINSIDEAPPEXT        EQUATE(106)






!WM_NULL 0000
!WM_CREATE 0x01
!WM_DESTROY 0x02
!WM_MOVE 0x03
!WM_SIZEWAIT 0x04
!WM_SIZE 0x05
!WM_ACTIVATE 0x06
!WM_SETFOCUS 0x07
!WM_KILLFOCUS 0x08
!WM_SETVISIBLE 0x09
!WM_ENABLE 0x0a
!WM_SETREDRAW 0x0b
!WM_SETTEXT 0x0c
!WM_GETTEXT 0x0d
!WM_GETTEXTLENGTH 0x0e
!WM_PAINT 0x0f
!WM_CLOSE 0x10
!WM_QUERYENDSESSION 0x11
!WM_QUIT 0x12
!WM_QUERYOPEN 0x13
!WM_ERASEBKGND 0x14
!WM_SYSCOLORCHANGE 0x15
!WM_ENDSESSION 0x16
!WM_SYSTEMERROR 0x17
!WM_SHOWWINDOW 0x18
!WM_CTLCOLOR 0x19
!WM_WININICHANGE 0x1a
!WM_DEVMODECHANGE 0x1b
!WM_ACTIVATEAPP 0x1c
!WM_FONTCHANGE 0x1d
!WM_TIMECHANGE 0x1e
!WM_CANCELMODE 0x1f
!WM_SETCURSOR 0x20
!WM_MOUSEACTIVATE 0x21
!WM_CHILDACTIVATE 0x22
!WM_QUEUESYNC 0x23
!WM_GETMINMAXINFO 0x24
!WM_LOGOFF 0x25
!WM_PAINTICON 0x26
!WM_ICONERASEBKGND 0x27
!WM_NEXTDLGCTL 0x28
!WM_ALTTABACTIVE 0x29
!WM_SPOOLERSTATUS 0x2a
!WM_DRAWITEM 0x2b
!WM_MEASUREITEM 0x2c
!WM_DELETEITEM 0x2d
!WM_VKEYTOITEM 0x2e
!WM_CHARTOITEM 0x2f
!WM_SETFONT 0x30
!WM_GETFONT 0x31
!WM_SETHOTKEY 0x32
!WM_GETHOTKEY 0x33
!WM_SHELLNOTIFY 0x34
!WM_ISACTIVEICON 0x35
!WM_QUERYPARKICON 0x36
!WM_QUERYDRAGICON 0x37
!WM_WINHELP 0x38
!WM_COMPAREITEM 0x39
!WM_FULLSCREEN 0x3a
!WM_CLIENTSHUTDOWN 0x3b
!WM_DDEMLEVENT 0x3c
!WM_GETOBJECT 0x3d
!undefined_1 0x3e
!undefined_2 0x3f
!WM_TESTING 0x40
!WM_COMPACTING 0x41
!WM_OTHERWINDOWCREATED 0x42
!WM_OTHERWINDOWDESTROYED 0x43
!WM_COMMNOTIFY 0x44
!undefined_3 0x45
!WM_WINDOWPOSCHANGING 0x46
!WM_WINDOWPOSCHANGED 0x47
!WM_POWER 0x48
!WM_COPYGLOBALDATA 0x49
!WM_COPYDATA 0x4a
!WM_CANCELJOURNAL 0x4b
!undefined_4 0x4c
!WM_KEYF1 0x4d
!WM_NOTIFY 0x4e
!WM_ACCESS_WINDOW 0x4f
!WM_INPUTLANGCHANGEREQUEST 0x50
!WM_INPUTLANGCHANGE 0x51
!WM_TCARD 0x52
!WM_HELP 0x53
!WM_USERCHANGED 0x54
!WM_NOTIFYFORMAT 0x55
!undefined_5 0x56
!undefined_6 0x57
!undefined_7 0x58
!undefined_8 0x59
!undefined_9 0x5a
!undefined_10 0x5b
!undefined_11 0x5c
!undefined_12 0x5d
!undefined_13 0x5e
!undefined_14 0x5f
!undefined_15 0x60
!undefined_16 0x61
!undefined_17 0x62
!undefined_18 0x63
!undefined_19 0x64
!undefined_20 0x65
!undefined_21 0x66
!undefined_22 0x67
!undefined_23 0x68
!undefined_24 0x69
!undefined_25 0x6a
!undefined_26 0x6b
!undefined_27 0x6c
!undefined_28 0x6d
!undefined_29 0x6e
!undefined_30 0x6f
!WM_FINALDESTROY 0x70
!WM_MEASUREITEM_CLIENTDATA 0x71
!undefined_31 0x72
!undefined_32 0x73
!undefined_33 0x74
!undefined_34 0x75
!undefined_35 0x76
!undefined_36 0x77
!undefined_37 0x78
!undefined_38 0x79
!undefined_39 0x7a
!WM_CONTEXTMENU 0x7b
!WM_STYLECHANGING 0x7c
!WM_STYLECHANGED 0x7d
!WM_DISPLAYCHANGE 0x7e
!WM_GETICON 0x7f
!WM_SETICON 0x80
!WM_NCCREATE 0x81
!WM_NCDESTROY 0x82
!WM_NCCALCSIZE 0x83
!WM_NCHITTEST 0x84
!WM_NCPAINT 0x85
!WM_NCACTIVATE 0x86
!WM_GETDLGCODE 0x87
!WM_SYNCPAINT 0x88
!WM_SYNCTASK 0x89
!undefined_40 0x8a
!WM_KLUDGEMINRECT 0x8b
!WM_LPKDRAWSWITCHWND 0x8c
!undefined_41 0x8d
!undefined_42 0x8e
!undefined_43 0x8f
!WM_UAHDESTROYWINDOW 0x90
!WM_UAHDRAWMENU 0x91
!WM_UAHDRAWMENUITEM 0x92
!WM_UAHINITMENU 0x93
!WM_UAHMEASUREMENUITEM 0x94
!WM_UAHNCPAINTMENUPOPUP 0x95
!WM_UAHUPDATE 0x96
!undefined_44 0x97
!undefined_45 0x98
!undefined_46 0x99
!undefined_47 0x9a
!undefined_48 0x9b
!undefined_49 0x9c
!undefined_50 0x9d
!undefined_51 0x9e
!undefined_52 0x9f
!WM_NCMOUSEMOVE 0xa0
!WM_NCLBUTTONDOWN 0xa1
!WM_NCLBUTTONUP 0xa2
!WM_NCLBUTTONDBLCLK 0xa3
!WM_NCRBUTTONDOWN 0xa4
!WM_NCRBUTTONUP 0xa5
!WM_NCRBUTTONDBLCLK 0xa6
!WM_NCMBUTTONDOWN 0xa7
!WM_NCMBUTTONUP 0xa8
!WM_NCMBUTTONDBLCLK 0xa9
!undefined_53 0xaa
!WM_NCXBUTTONDOWN 0xab
!WM_NCXBUTTONUP 0xac
!WM_NCXBUTTONDBLCLK 0xad
!WM_NCUAHDRAWCAPTION 0xae
!WM_NCUAHDRAWFRAME 0xaf
!EM_GETSEL 0xb0
!EM_SETSEL 0xb1
!EM_GETRECT 0xb2
!EM_SETRECT 0xb3
!EM_SETRECTNP 0xb4
!EM_SCROLL 0xb5
!EM_LINESCROLL 0xb6
!EM_SCROLLCARET 0xb7
!EM_GETMODIFY 0xb8
!EM_SETMODIFY 0xb9
!EM_GETLINECOUNT 0xba
!EM_LINEINDEX 0xbb
!EM_SETHANDLE 0xbc
!EM_GETHANDLE 0xbd
!EM_GETTHUMB 0xbe
!undefined_54 0xbf
!undefined_55 0xc0
!EM_LINELENGTH 0xc1
!EM_REPLACESEL 0xc2
!EM_SETFONT 0xc3
!EM_GETLINE 0xc4
!EM_LIMITTEXT 0xc5
!EM_CANUNDO 0xc6
!EM_UNDO 0xc7
!EM_FMTLINES 0xc8
!EM_LINEFROMCHAR 0xc9
!EM_SETWORDBREAK 0xca
!EM_SETTABSTOPS 0xcb
!EM_SETPASSWORDCHAR 0xcc
!EM_EMPTYUNDOBUFFER 0xcd
!EM_GETFIRSTVISIBLELINE 0xce
!EM_SETREADONLY 0xcf
!EM_SETWORDBREAKPROC 0xd0
!EM_GETWORDBREAKPROC 0xd1
!EM_GETPASSWORDCHAR 0xd2
!EM_SETMARGINS 0xd3
!EM_GETMARGINS 0xd4
!EM_GETLIMITTEXT 0xd5
!EM_POSFROMCHAR 0xd6
!EM_CHARFROMPOS 0xd7
!EM_SETIMESTATUS 0xd8
!EM_GETIMESTATUS 0xd9
!EM_MSGMAX 0xda
!undefined_56 0xdb
!undefined_57 0xdc
!undefined_58 0xdd
!undefined_59 0xde
!undefined_60 0xdf
!undefined_61 0xe0
!undefined_62 0xe1
!undefined_63 0xe2
!undefined_64 0xe3
!undefined_65 0xe4
!undefined_66 0xe5
!undefined_67 0xe6
!undefined_68 0xe7
!undefined_69 0xe8
!undefined_70 0xe9
!undefined_71 0xea
!undefined_72 0xeb
!undefined_73 0xec
!undefined_74 0xed
!undefined_75 0xee
!undefined_76 0xef
!undefined_77 0xf0
!undefined_78 0xf1
!undefined_79 0xf2
!undefined_80 0xf3
!undefined_81 0xf4
!undefined_82 0xf5
!undefined_83 0xf6
!undefined_84 0xf7
!undefined_85 0xf8
!undefined_86 0xf9
!undefined_87 0xfa
!undefined_88 0xfb
!undefined_89 0xfc
!undefined_90 0xfd
!WM_INPUT_DEVICE_CHANGE 0xfe
!WM_INPUT 0xff
!WM_KEYDOWN 0x100
!WM_KEYUP 0x101
!WM_CHAR 0x102
!WM_DEADCHAR 0x103
!WM_SYSKEYDOWN 0x104
!WM_SYSKEYUP 0x105
!WM_SYSCHAR 0x106
!WM_SYSDEADCHAR 0x107
!WM_YOMICHAR 0x108
!WM_UNICHAR 0x109
!WM_CONVERTREQUEST 0x10a
!WM_CONVERTRESULT 0x10b
!WM_INTERIM 0x10c
!WM_IME_STARTCOMPOSITION 0x10d
!WM_IME_ENDCOMPOSITION 0x10e
!WM_IME_COMPOSITION 0x10f
!WM_INITDIALOG 0x110
1 Like

and 4/4 bunch of none organised EQUATES

!WM_COMMAND 0x111
!WM_SYSCOMMAND 0x112
!WM_TIMER 0x113
!WM_HSCROLL 0x114
!WM_VSCROLL 0x115
!WM_INITMENU 0x116
!WM_INITMENUPOPUP 0x117
!WM_SYSTIMER 0x118
!WM_GESTURE 0x119
!WM_GESTURENOTIFY 0x11a
!WM_GESTUREINPUT 0x11b
!WM_GESTURENOTIFIED 0x11c
!undefined_91 0x11d
!undefined_92 0x11e
!WM_MENUSELECT 0x11f
!WM_MENUCHAR 0x120
!WM_ENTERIDLE 0x121
!WM_MENURBUTTONUP 0x122
!WM_MENUDRAG 0x123
!WM_MENUGETOBJECT 0x124
!WM_UNINITMENUPOPUP 0x125
!WM_MENUCOMMAND 0x126
!WM_CHANGEUISTATE 0x127
!WM_UPDATEUISTATE 0x128
!WM_QUERYUISTATE 0x129
!undefined_93 0x12a
!undefined_94 0x12b
!undefined_95 0x12c
!undefined_96 0x12d
!undefined_97 0x12e
!undefined_98 0x12f
!undefined_99 0x130
!WM_LBTRACKPOINT 0x131
!WM_CTLCOLORMSGBOX 0x132
!WM_CTLCOLOREDIT 0x133
!WM_CTLCOLORLISTBOX 0x134
!WM_CTLCOLORBTN 0x135
!WM_CTLCOLORDLG 0x136
!WM_CTLCOLORSCROLLBAR 0x137
!WM_CTLCOLORSTATIC 0x138
!undefined_100 0x139
!undefined_101 0x13a
!undefined_102 0x13b
!undefined_103 0x13c
!undefined_104 0x13d
!undefined_105 0x13e
!undefined_106 0x13f
!CB_GETEDITSEL 0x140
!CB_LIMITTEXT 0x141
!CB_SETEDITSEL 0x142
!CB_ADDSTRING 0x143
!CB_DELETESTRING 0x144
!CB_DIR 0x145
!CB_GETCOUNT 0x146
!CB_GETCURSEL 0x147
!CB_GETLBTEXT 0x148
!CB_GETLBTEXTLEN 0x149
!CB_INSERTSTRING 0x14a
!CB_RESETCONTENT 0x14b
!CB_FINDSTRING 0x14c
!CB_SELECTSTRING 0x14d
!CB_SETCURSEL 0x14e
!CB_SHOWDROPDOWN 0x14f
!CB_GETITEMDATA 0x150
!CB_SETITEMDATA 0x151
!CB_GETDROPPEDCONTROLRECT 0x152
!CB_SETITEMHEIGHT 0x153
!CB_GETITEMHEIGHT 0x154
!CB_SETEXTENDEDUI 0x155
!CB_GETEXTENDEDUI 0x156
!CB_GETDROPPEDSTATE 0x157
!CB_FINDSTRINGEXACT 0x158
!CB_SETLOCALE 0x159
!CB_GETLOCALE 0x15a
!CB_GETTOPINDEX 0x15b
!CB_SETTOPINDEX 0x15c
!CB_GETHORIZONTALEXTENT 0x15d
!CB_SETHORIZONTALEXTENT 0x15e
!CB_GETDROPPEDWIDTH 0x15f
!CB_SETDROPPEDWIDTH 0x160
!CB_INITSTORAGE 0x161
!CB_MSGMAX_OLD 0x162
!CB_MULTIPLEADDSTRING 0x163
!CB_GETCOMBOBOXINFO 0x164
!CB_MSGMAX 0x165
!undefined_107 0x166
!undefined_108 0x167
!undefined_109 0x168
!undefined_110 0x169
!undefined_111 0x16a
!undefined_112 0x16b
!undefined_113 0x16c
!undefined_114 0x16d
!undefined_115 0x16e
!undefined_116 0x16f
!undefined_117 0x170
!undefined_118 0x171
!undefined_119 0x172
!undefined_120 0x173
!undefined_121 0x174
!undefined_122 0x175
!undefined_123 0x176
!undefined_124 0x177
!undefined_125 0x178
!undefined_126 0x179
!undefined_127 0x17a
!undefined_128 0x17b
!undefined_129 0x17c
!undefined_130 0x17d
!undefined_131 0x17e
!undefined_132 0x17f
!LB_ADDSTRING 0x180
!LB_INSERTSTRING 0x181
!LB_DELETESTRING 0x182
!LB_SELITEMRANGEEX 0x183
!LB_RESETCONTENT 0x184
!LB_SETSEL 0x185
!LB_SETCURSEL 0x186
!LB_GETSEL 0x187
!LB_GETCURSEL 0x188
!LB_GETTEXT 0x189
!LB_GETTEXTLEN 0x18a
!LB_GETCOUNT 0x18b
!LB_SELECTSTRING 0x18c
!LB_DIR 0x18d
!LB_GETTOPINDEX 0x18e
!LB_FINDSTRING 0x18f
!LB_GETSELCOUNT 0x190
!LB_GETSELITEMS 0x191
!LB_SETTABSTOPS 0x192
!LB_GETHORIZONTALEXTENT 0x193
!LB_SETHORIZONTALEXTENT 0x194
!LB_SETCOLUMNWIDTH 0x195
!LB_ADDFILE 0x196
!LB_SETTOPINDEX 0x197
!LB_GETITEMRECT 0x198
!LB_GETITEMDATA 0x199
!LB_SETITEMDATA 0x19a
!LB_SELITEMRANGE 0x19b
!LB_SETANCHORINDEX 0x19c
!LB_GETANCHORINDEX 0x19d
!LB_SETCARETINDEX 0x19e
!LB_GETCARETINDEX 0x19f
!LB_SETITEMHEIGHT 0x1a0
!LB_GETITEMHEIGHT 0x1a1
!LB_FINDSTRINGEXACT 0x1a2
!LBCB_CARETON 0x1a3
!LBCB_CARETOFF 0x1a4
!LB_SETLOCALE 0x1a5
!LB_GETLOCALE 0x1a6
!LB_SETCOUNT 0x1a7
!LB_INITSTORAGE 0x1a8
!LB_ITEMFROMPOINT 0x1a9
!LB_INSERTSTRINGUPPER 0x1aa
!LB_INSERTSTRINGLOWER 0x1ab
!LB_ADDSTRINGUPPER 0x1ac
!LB_ADDSTRINGLOWER 0x1ad
!LBCB_STARTTRACK 0x1ae
!LBCB_ENDTRACK 0x1af
!LB_MSGMAX_OLD 0x1b0
!LB_MULTIPLEADDSTRING 0x1b1
!LB_GETLISTBOXINFO 0x1b2
!LB_MSGMAX 0x1b3
!undefined_133 0x1b4
!undefined_134 0x1b5
!undefined_135 0x1b6
!undefined_136 0x1b7
!undefined_137 0x1b8
!undefined_138 0x1b9
!undefined_139 0x1ba
!undefined_140 0x1bb
!undefined_141 0x1bc
!undefined_142 0x1bd
!undefined_143 0x1be
!undefined_144 0x1bf
!undefined_145 0x1c0
!undefined_146 0x1c1
!undefined_147 0x1c2
!undefined_148 0x1c3
!undefined_149 0x1c4
!undefined_150 0x1c5
!undefined_151 0x1c6
!undefined_152 0x1c7
!undefined_153 0x1c8
!undefined_154 0x1c9
!undefined_155 0x1ca
!undefined_156 0x1cb
!undefined_157 0x1cc
!undefined_158 0x1cd
!undefined_159 0x1ce
!undefined_160 0x1cf
!undefined_161 0x1d0
!undefined_162 0x1d1
!undefined_163 0x1d2
!undefined_164 0x1d3
!undefined_165 0x1d4
!undefined_166 0x1d5
!undefined_167 0x1d6
!undefined_168 0x1d7
!undefined_169 0x1d8
!undefined_170 0x1d9
!undefined_171 0x1da
!undefined_172 0x1db
!undefined_173 0x1dc
!undefined_174 0x1dd
!undefined_175 0x1de
!undefined_176 0x1df
!MN_FIRST 0x1e0
!MN_GETHMENU 0x1e1
!undefined_177 0x1e2
!undefined_178 0x1e3
!undefined_179 0x1e4
!undefined_180 0x1e5
!undefined_181 0x1e6
!undefined_182 0x1e7
!undefined_183 0x1e8
!undefined_184 0x1e9
!undefined_185 0x1ea
!undefined_186 0x1eb
!undefined_187 0x1ec
!undefined_188 0x1ed
!undefined_189 0x1ee
!undefined_190 0x1ef
!undefined_191 0x1f0
!undefined_192 0x1f1
!undefined_193 0x1f2
!undefined_194 0x1f3
!undefined_195 0x1f4
!undefined_196 0x1f5
!undefined_197 0x1f6
!undefined_198 0x1f7
!undefined_199 0x1f8
!undefined_200 0x1f9
!undefined_201 0x1fa
!undefined_202 0x1fb
!undefined_203 0x1fc
!undefined_204 0x1fd
!undefined_205 0x1fe
!undefined_206 0x1ff
!WM_MOUSEMOVE 0x200
!WM_LBUTTONDOWN 0x201
!WM_LBUTTONUP 0x202
!WM_LBUTTONDBLCLK 0x203
!WM_RBUTTONDOWN 0x204
!WM_RBUTTONUP 0x205
!WM_RBUTTONDBLCLK 0x206
!WM_MBUTTONDOWN 0x207
!WM_MBUTTONUP 0x208
!WM_MBUTTONDBLCLK 0x209
!WM_MOUSEWHEEL 0x20a
!WM_XBUTTONDOWN 0x20b
!WM_XBUTTONUP 0x20c
!WM_XBUTTONDBLCLK 0x20d
!WM_MOUSEHWHEEL 0x20e
!undefined_207 0x20f
!WM_PARENTNOTIFY 0x210
!WM_ENTERMENULOOP 0x211
!WM_EXITMENULOOP 0x212
!WM_NEXTMENU 0x213
!WM_SIZING 0x214
!WM_CAPTURECHANGED 0x215
!WM_MOVING 0x216
!undefined_208 0x217
!WM_POWERBROADCAST 0x218
!WM_DEVICECHANGE 0x219
!undefined_209 0x21a
!undefined_210 0x21b
!undefined_211 0x21c
!undefined_212 0x21d
!undefined_213 0x21e
!undefined_214 0x21f
!WM_MDICREATE 0x220
!WM_MDIDESTROY 0x221
!WM_MDIACTIVATE 0x222
!WM_MDIRESTORE 0x223
!WM_MDINEXT 0x224
!WM_MDIMAXIMIZE 0x225
!WM_MDITILE 0x226
!WM_MDICASCADE 0x227
!WM_MDIICONARRANGE 0x228
!WM_MDIGETACTIVE 0x229
!WM_DROPOBJECT 0x22a
!WM_QUERYDROPOBJECT 0x22b
!WM_BEGINDRAG 0x22c
!WM_DRAGLOOP 0x22d
!WM_DRAGSELECT 0x22e
!WM_DRAGMOVE 0x22f
!WM_MDISETMENU 0x230
!WM_ENTERSIZEMOVE 0x231
!WM_EXITSIZEMOVE 0x232
!WM_DROPFILES 0x233
!WM_MDIREFRESHMENU 0x234
!undefined_215 0x235
!undefined_216 0x236
!undefined_217 0x237
!WM_POINTERDEVICECHANGE 0x238
!WM_POINTERDEVICEINRANGE 0x239
!WM_POINTERDEVICEOUTOFRANGE 0x23a
!WM_STOPINERTIA 0x23b
!WM_ENDINERTIA 0x23c
!WM_EDGYINERTIA 0x23d
!undefined_218 0x23e
!undefined_219 0x23f
!WM_TOUCH 0x240
!WM_NCPOINTERUPDATE 0x241
!WM_NCPOINTERDOWN 0x242
!WM_NCPOINTERUP 0x243
!WM_NCPOINTERLAST 0x244
!WM_POINTERUPDATE 0x245
!WM_POINTERDOWN 0x246
!WM_POINTERUP 0x247
!WM_POINTER_reserved_248 0x248
!WM_POINTERENTER 0x249
!WM_POINTERLEAVE 0x24a
!WM_POINTERACTIVATE 0x24b
!WM_POINTERCAPTURECHANGED 0x24c
!WM_TOUCHHITTESTING 0x24d
!WM_POINTERWHEEL 0x24e
!WM_POINTERHWHEEL 0x24f
!WM_POINTER_reserved_250 0x250
!WM_POINTER_reserved_251 0x251
!WM_POINTER_reserved_252 0x252
!WM_POINTER_reserved_253 0x253
!WM_POINTER_reserved_254 0x254
!WM_POINTER_reserved_255 0x255
!WM_POINTER_reserved_256 0x256
!WM_POINTERLAST 0x257
!undefined_220 0x258
!undefined_221 0x259
!undefined_222 0x25a
!undefined_223 0x25b
!undefined_224 0x25c
!undefined_225 0x25d
!undefined_226 0x25e
!undefined_227 0x25f
!undefined_228 0x260
!undefined_229 0x261
!undefined_230 0x262
!undefined_231 0x263
!undefined_232 0x264
!undefined_233 0x265
!undefined_234 0x266
!undefined_235 0x267
!undefined_236 0x268
!undefined_237 0x269
!undefined_238 0x26a
!undefined_239 0x26b
!undefined_240 0x26c
!undefined_241 0x26d
!undefined_242 0x26e
!undefined_243 0x26f
!WM_VISIBILITYCHANGED 0x270
!WM_VIEWSTATECHANGED 0x271
!WM_UNREGISTER_WINDOW_SERVICES 0x272
!WM_CONSOLIDATED 0x273
!undefined_244 0x274
!undefined_245 0x275
!undefined_246 0x276
!undefined_247 0x277
!undefined_248 0x278
!undefined_249 0x279
!undefined_250 0x27a
!undefined_251 0x27b
!undefined_252 0x27c
!undefined_253 0x27d
!undefined_254 0x27e
!undefined_255 0x27f
!WM_IME_REPORT 0x280
!WM_IME_SETCONTEXT 0x281
!WM_IME_NOTIFY 0x282
!WM_IME_CONTROL 0x283
!WM_IME_COMPOSITIONFULL 0x284
!WM_IME_SELECT 0x285
!WM_IME_CHAR 0x286
!WM_IME_SYSTEM 0x287
!WM_IME_REQUEST 0x288
!WM_KANJI_reserved_289 0x289
!WM_KANJI_reserved_28a 0x28a
!WM_KANJI_reserved_28b 0x28b
!WM_KANJI_reserved_28c 0x28c
!WM_KANJI_reserved_28d 0x28d
!WM_KANJI_reserved_28e 0x28e
!WM_KANJI_reserved_28f 0x28f
!WM_IME_KEYDOWN 0x290
!WM_IME_KEYUP 0x291
!WM_KANJI_reserved_292 0x292
!WM_KANJI_reserved_293 0x293
!WM_KANJI_reserved_294 0x294
!WM_KANJI_reserved_295 0x295
!WM_KANJI_reserved_296 0x296
!WM_KANJI_reserved_297 0x297
!WM_KANJI_reserved_298 0x298
!WM_KANJI_reserved_299 0x299
!WM_KANJI_reserved_29a 0x29a
!WM_KANJI_reserved_29b 0x29b
!WM_KANJI_reserved_29c 0x29c
!WM_KANJI_reserved_29d 0x29d
!WM_KANJI_reserved_29e 0x29e
!WM_KANJILAST 0x29f
!WM_NCMOUSEHOVER 0x2a0
!WM_MOUSEHOVER 0x2a1
!WM_NCMOUSELEAVE 0x2a2
!WM_MOUSELEAVE 0x2a3
!WM_TRACKMOUSEEVENT__reserved_2a4 0x2a4
!WM_TRACKMOUSEEVENT__reserved_2a5 0x2a5
!WM_TRACKMOUSEEVENT__reserved_2a6 0x2a6
!WM_TRACKMOUSEEVENT__reserved_2a7 0x2a7
!WM_TRACKMOUSEEVENT__reserved_2a8 0x2a8
!WM_TRACKMOUSEEVENT__reserved_2a9 0x2a9
!WM_TRACKMOUSEEVENT__reserved_2aa 0x2aa
!WM_TRACKMOUSEEVENT__reserved_2ab 0x2ab
!WM_TRACKMOUSEEVENT__reserved_2ac 0x2ac
!WM_TRACKMOUSEEVENT__reserved_2ad 0x2ad
!WM_TRACKMOUSEEVENT__reserved_2ae 0x2ae
!WM_TRACKMOUSEEVENT_LAST 0x2af
!undefined_256 0x2b0
!WM_WTSSESSION_CHANGE 0x2b1
!undefined_257 0x2b2
!undefined_258 0x2b3
!undefined_259 0x2b4
!undefined_260 0x2b5
!undefined_261 0x2b6
!undefined_262 0x2b7
!undefined_263 0x2b8
!undefined_264 0x2b9
!undefined_265 0x2ba
!undefined_266 0x2bb
!undefined_267 0x2bc
!undefined_268 0x2bd
!undefined_269 0x2be
!undefined_270 0x2bf
!WM_TABLET_FIRST 0x2c0
!WM_TABLET__reserved_2c1 0x2c1
!WM_TABLET__reserved_2c2 0x2c2
!WM_TABLET__reserved_2c3 0x2c3
!WM_TABLET__reserved_2c4 0x2c4
!WM_TABLET__reserved_2c5 0x2c5
!WM_TABLET__reserved_2c6 0x2c6
!WM_TABLET__reserved_2c7 0x2c7
!WM_POINTERDEVICEADDED 0x2c8
!WM_POINTERDEVICEDELETED 0x2c9
!WM_TABLET__reserved_2ca 0x2ca
!WM_FLICK 0x2cb
!WM_TABLET__reserved_2cc 0x2cc
!WM_FLICKINTERNAL 0x2cd
!WM_BRIGHTNESSCHANGED 0x2ce
!WM_TABLET__reserved_2cf 0x2cf
!WM_TABLET__reserved_2d0 0x2d0
!WM_TABLET__reserved_2d1 0x2d1
!WM_TABLET__reserved_2d2 0x2d2
!WM_TABLET__reserved_2d3 0x2d3
!WM_TABLET__reserved_2d4 0x2d4
!WM_TABLET__reserved_2d5 0x2d5
!WM_TABLET__reserved_2d6 0x2d6
!WM_TABLET__reserved_2d7 0x2d7
!WM_TABLET__reserved_2d8 0x2d8
!WM_TABLET__reserved_2d9 0x2d9
!WM_TABLET__reserved_2da 0x2da
!WM_TABLET__reserved_2db 0x2db
!WM_TABLET__reserved_2dc 0x2dc
!WM_TABLET__reserved_2dd 0x2dd
!WM_TABLET__reserved_2de 0x2de
!WM_TABLET_LAST 0x2df
!WM_DPICHANGED 0x2e0
!undefined_271 0x2e1
!undefined_272 0x2e2
!undefined_273 0x2e3
!undefined_274 0x2e4
!undefined_275 0x2e5
!undefined_276 0x2e6
!undefined_277 0x2e7
!undefined_278 0x2e8
!undefined_279 0x2e9
!undefined_280 0x2ea
!undefined_281 0x2eb
!undefined_282 0x2ec
!undefined_283 0x2ed
!undefined_284 0x2ee
!undefined_285 0x2ef
!undefined_286 0x2f0
!undefined_287 0x2f1
!undefined_288 0x2f2
!undefined_289 0x2f3
!undefined_290 0x2f4
!undefined_291 0x2f5
!undefined_292 0x2f6
!undefined_293 0x2f7
!undefined_294 0x2f8
!undefined_295 0x2f9
!undefined_296 0x2fa
!undefined_297 0x2fb
!undefined_298 0x2fc
!undefined_299 0x2fd
!undefined_300 0x2fe
!undefined_301 0x2ff
!WM_CUT 0x300
!WM_COPY 0x301
!WM_PASTE 0x302
!WM_CLEAR 0x303
!WM_UNDO 0x304
!WM_RENDERFORMAT 0x305
!WM_RENDERALLFORMATS 0x306
!WM_DESTROYCLIPBOARD 0x307
!WM_DRAWCLIPBOARD 0x308
!WM_PAINTCLIPBOARD 0x309
!WM_VSCROLLCLIPBOARD 0x30a
!WM_SIZECLIPBOARD 0x30b
!WM_ASKCBFORMATNAME 0x30c
!WM_CHANGECBCHAIN 0x30d
!WM_HSCROLLCLIPBOARD 0x30e
!WM_QUERYNEWPALETTE 0x30f
!WM_PALETTEISCHANGING 0x310
!WM_PALETTECHANGED 0x311
!WM_HOTKEY 0x312
!WM_SYSMENU 0x313
!WM_HOOKMSG 0x314
!WM_EXITPROCESS 0x315
!WM_WAKETHREAD 0x316
!WM_PRINT 0x317
!WM_PRINTCLIENT 0x318
!WM_APPCOMMAND 0x319
!WM_THEMECHANGED 0x31a
!WM_UAHINIT 0x31b
!WM_DESKTOPNOTIFY 0x31c
!WM_CLIPBOARDUPDATE 0x31d
!WM_DWMCOMPOSITIONCHANGED 0x31e
!WM_DWMNCRENDERINGCHANGED 0x31f
!WM_DWMCOLORIZATIONCOLORCHANGED 0x320
!WM_DWMWINDOWMAXIMIZEDCHANGE 0x321
!WM_DWMEXILEFRAME 0x322
!WM_DWMSENDICONICTHUMBNAIL 0x323
!WM_MAGNIFICATION_STARTED 0x324
!WM_MAGNIFICATION_ENDED 0x325
!WM_DWMSENDICONICLIVEPREVIEWBITMAP 0x326
!WM_DWMTHUMBNAILSIZECHANGED 0x327
!WM_MAGNIFICATION_OUTPUT 0x328
!WM_BSDRDATA 0x329
!WM_DWMTRANSITIONSTATECHANGED 0x32a
!undefined_302 0x32b
!WM_KEYBOARDCORRECTIONCALLOUT 0x32c
!WM_KEYBOARDCORRECTIONACTION 0x32d
!WM_UIACTION 0x32e
!WM_ROUTED_UI_EVENT 0x32f
!WM_MEASURECONTROL 0x330
!WM_GETACTIONTEXT 0x331
!WM_CE_ONLY__reserved_332 0x332
!WM_FORWARDKEYDOWN 0x333
!WM_FORWARDKEYUP 0x334
!WM_CE_ONLY__reserved_335 0x335
!WM_CE_ONLY__reserved_336 0x336
!WM_CE_ONLY__reserved_337 0x337
!WM_CE_ONLY__reserved_338 0x338
!WM_CE_ONLY__reserved_339 0x339
!WM_CE_ONLY__reserved_33a 0x33a
!WM_CE_ONLY__reserved_33b 0x33b
!WM_CE_ONLY__reserved_33c 0x33c
!WM_CE_ONLY__reserved_33d 0x33d
!WM_CE_ONLY_LAST 0x33e
!WM_GETTITLEBARINFOEX 0x33f
!WM_NOTIFYWOW 0x340
!undefined_303 0x341
!undefined_304 0x342
!undefined_305 0x343
!undefined_306 0x344
!undefined_307 0x345
!undefined_308 0x346
!undefined_309 0x347
!undefined_310 0x348
!undefined_311 0x349
!undefined_312 0x34a
!undefined_313 0x34b
!undefined_314 0x34c
!undefined_315 0x34d
!undefined_316 0x34e
!undefined_317 0x34f
!undefined_318 0x350
!undefined_319 0x351
!undefined_320 0x352
!undefined_321 0x353
!undefined_322 0x354
!undefined_323 0x355
!undefined_324 0x356
!undefined_325 0x357
!WM_HANDHELDFIRST 0x358
!WM_HANDHELD_reserved_359 0x359
!WM_HANDHELD_reserved_35a 0x35a
!WM_HANDHELD_reserved_35b 0x35b
!WM_HANDHELD_reserved_35c 0x35c
!WM_HANDHELD_reserved_35d 0x35d
!WM_HANDHELD_reserved_35e 0x35e
!WM_HANDHELDLAST 0x35f
!WM_AFXFIRST 0x360
!WM_AFX_reserved_361 0x361
!WM_AFX_reserved_362 0x362
!WM_AFX_reserved_363 0x363
!WM_AFX_reserved_364 0x364
!WM_AFX_reserved_365 0x365
!WM_AFX_reserved_366 0x366
!WM_AFX_reserved_367 0x367
!WM_AFX_reserved_368 0x368
!WM_AFX_reserved_369 0x369
!WM_AFX_reserved_36a 0x36a
!WM_AFX_reserved_36b 0x36b
!WM_AFX_reserved_36c 0x36c
!WM_AFX_reserved_36d 0x36d
!WM_AFX_reserved_36e 0x36e
!WM_AFX_reserved_36f 0x36f
!WM_AFX_reserved_370 0x370
!WM_AFX_reserved_371 0x371
!WM_AFX_reserved_372 0x372
!WM_AFX_reserved_373 0x373
!WM_AFX_reserved_374 0x374
!WM_AFX_reserved_375 0x375
!WM_AFX_reserved_376 0x376
!WM_AFX_reserved_377 0x377
!WM_AFX_reserved_378 0x378
!WM_AFX_reserved_379 0x379
!WM_AFX_reserved_37a 0x37a
!WM_AFX_reserved_37b 0x37b
!WM_AFX_reserved_37c 0x37c
!WM_AFX_reserved_37d 0x37d
!WM_AFX_reserved_37e 0x37e
!WM_AFXLAST 0x37f
!WM_PENWINFIRST 0x380
!WM_PENWIN_reserved_381 0x381
!WM_PENWIN_reserved_382 0x382
!WM_PENWIN_reserved_383 0x383
!WM_PENWIN_reserved_384 0x384
!WM_PENWIN_reserved_385 0x385
!WM_PENWIN_reserved_386 0x386
!WM_PENWIN_reserved_387 0x387
!WM_PENWIN_reserved_388 0x388
!WM_PENWIN_reserved_389 0x389
!WM_PENWIN_reserved_38a 0x38a
!WM_PENWIN_reserved_38b 0x38b
!WM_PENWIN_reserved_38c 0x38c
!WM_PENWIN_reserved_38d 0x38d
!WM_PENWIN_reserved_38e 0x38e
!WM_PENWINLAST 0x38f
!WM_COALESCE_FIRST 0x390
!WM_COALESCE__reserved_391 0x391
!WM_COALESCE__reserved_392 0x392
!WM_COALESCE__reserved_393 0x393
!WM_COALESCE__reserved_394 0x394
!WM_COALESCE__reserved_395 0x395
!WM_COALESCE__reserved_396 0x396
!WM_COALESCE__reserved_397 0x397
!WM_COALESCE__reserved_398 0x398
!WM_COALESCE__reserved_399 0x399
!WM_COALESCE__reserved_39a 0x39a
!WM_COALESCE__reserved_39b 0x39b
!WM_COALESCE__reserved_39c 0x39c
!WM_COALESCE__reserved_39d 0x39d
!WM_COALESCE__reserved_39e 0x39e
!WM_COALESCE_LAST 0x39f
!WM_MM_RESERVED_FIRST 0x3a0
!WM_MM_RESERVED__reserved_3a1 0x3a1
!WM_MM_RESERVED__reserved_3a2 0x3a2
!WM_MM_RESERVED__reserved_3a3 0x3a3
!WM_MM_RESERVED__reserved_3a4 0x3a4
!WM_MM_RESERVED__reserved_3a5 0x3a5
!WM_MM_RESERVED__reserved_3a6 0x3a6
!WM_MM_RESERVED__reserved_3a7 0x3a7
!WM_MM_RESERVED__reserved_3a8 0x3a8
!WM_MM_RESERVED__reserved_3a9 0x3a9
!WM_MM_RESERVED__reserved_3aa 0x3aa
!WM_MM_RESERVED__reserved_3ab 0x3ab
!WM_MM_RESERVED__reserved_3ac 0x3ac
!WM_MM_RESERVED__reserved_3ad 0x3ad
!WM_MM_RESERVED__reserved_3ae 0x3ae
!WM_MM_RESERVED__reserved_3af 0x3af
!WM_MM_RESERVED__reserved_3b0 0x3b0
!WM_MM_RESERVED__reserved_3b1 0x3b1
!WM_MM_RESERVED__reserved_3b2 0x3b2
!WM_MM_RESERVED__reserved_3b3 0x3b3
!WM_MM_RESERVED__reserved_3b4 0x3b4
!WM_MM_RESERVED__reserved_3b5 0x3b5
!WM_MM_RESERVED__reserved_3b6 0x3b6
!WM_MM_RESERVED__reserved_3b7 0x3b7
!WM_MM_RESERVED__reserved_3b8 0x3b8
!WM_MM_RESERVED__reserved_3b9 0x3b9
!WM_MM_RESERVED__reserved_3ba 0x3ba
!WM_MM_RESERVED__reserved_3bb 0x3bb
!WM_MM_RESERVED__reserved_3bc 0x3bc
!WM_MM_RESERVED__reserved_3bd 0x3bd
!WM_MM_RESERVED__reserved_3be 0x3be
!WM_MM_RESERVED__reserved_3bf 0x3bf
!WM_MM_RESERVED__reserved_3c0 0x3c0
!WM_MM_RESERVED__reserved_3c1 0x3c1
!WM_MM_RESERVED__reserved_3c2 0x3c2
!WM_MM_RESERVED__reserved_3c3 0x3c3
!WM_MM_RESERVED__reserved_3c4 0x3c4
!WM_MM_RESERVED__reserved_3c5 0x3c5
!WM_MM_RESERVED__reserved_3c6 0x3c6
!WM_MM_RESERVED__reserved_3c7 0x3c7
!WM_MM_RESERVED__reserved_3c8 0x3c8
!WM_MM_RESERVED__reserved_3c9 0x3c9
!WM_MM_RESERVED__reserved_3ca 0x3ca
!WM_MM_RESERVED__reserved_3cb 0x3cb
!WM_MM_RESERVED__reserved_3cc 0x3cc
!WM_MM_RESERVED__reserved_3cd 0x3cd
!WM_MM_RESERVED__reserved_3ce 0x3ce
!WM_MM_RESERVED__reserved_3cf 0x3cf
!WM_MM_RESERVED__reserved_3d0 0x3d0
!WM_MM_RESERVED__reserved_3d1 0x3d1
!WM_MM_RESERVED__reserved_3d2 0x3d2
!WM_MM_RESERVED__reserved_3d3 0x3d3
!WM_MM_RESERVED__reserved_3d4 0x3d4
!WM_MM_RESERVED__reserved_3d5 0x3d5
!WM_MM_RESERVED__reserved_3d6 0x3d6
!WM_MM_RESERVED__reserved_3d7 0x3d7
!WM_MM_RESERVED__reserved_3d8 0x3d8
!WM_MM_RESERVED__reserved_3d9 0x3d9
!WM_MM_RESERVED__reserved_3da 0x3da
!WM_MM_RESERVED__reserved_3db 0x3db
!WM_MM_RESERVED__reserved_3dc 0x3dc
!WM_MM_RESERVED__reserved_3dd 0x3dd
!WM_MM_RESERVED__reserved_3de 0x3de
!WM_MM_RESERVED_LAST 0x3df
!WM_INTERNAL_DDE_FIRST 0x3e0
!WM_INTERNAL_DDE__reserved_3e1 0x3e1
!WM_INTERNAL_DDE__reserved_3e2 0x3e2
!WM_INTERNAL_DDE__reserved_3e3 0x3e3
!WM_INTERNAL_DDE__reserved_3e4 0x3e4
!WM_INTERNAL_DDE__reserved_3e5 0x3e5
!WM_INTERNAL_DDE__reserved_3e6 0x3e6
!WM_INTERNAL_DDE__reserved_3e7 0x3e7
!WM_INTERNAL_DDE__reserved_3e8 0x3e8
!WM_INTERNAL_DDE__reserved_3e9 0x3e9
!WM_INTERNAL_DDE__reserved_3ea 0x3ea
!WM_INTERNAL_DDE__reserved_3eb 0x3eb
!WM_INTERNAL_DDE__reserved_3ec 0x3ec
!WM_INTERNAL_DDE__reserved_3ed 0x3ed
!WM_INTERNAL_DDE__reserved_3ee 0x3ee
!WM_INTERNAL_DDE_LAST 0x3ef
!WM_CBT_RESERVED_FIRST 0x3f0
!WM_CBT_RESERVED__reserved_3f1 0x3f1
!WM_CBT_RESERVED__reserved_3f2 0x3f2
!WM_CBT_RESERVED__reserved_3f3 0x3f3
!WM_CBT_RESERVED__reserved_3f4 0x3f4
!WM_CBT_RESERVED__reserved_3f5 0x3f5
!WM_CBT_RESERVED__reserved_3f6 0x3f6
!WM_CBT_RESERVED__reserved_3f7 0x3f7
!WM_CBT_RESERVED__reserved_3f8 0x3f8
!WM_CBT_RESERVED__reserved_3f9 0x3f9
!WM_CBT_RESERVED__reserved_3fa 0x3fa
!WM_CBT_RESERVED__reserved_3fb 0x3fb
!WM_CBT_RESERVED__reserved_3fc 0x3fc
!WM_CBT_RESERVED__reserved_3fd 0x3fd
!WM_CBT_RESERVED__reserved_3fe 0x3fe
!WM_CBT_RESERVED_LAST 0x3ff


FILE_DAX_VOLUME                     EQUATE(020000000h)
FILE_NAMED_STREAMS                  EQUATE(0040000h)
FILE_READ_ONLY_VOLUME               EQUATE(0080000h)
FILE_SEQUENTIAL_WRITE_ONCE          EQUATE(00100000h)
FILE_SUPPORTS_ENCRYPTION            EQUATE(0020000h)
FILE_SUPPORTS_EXTENDED_ATTRIBUTES   EQUATE(00800000h)
FILE_SUPPORTS_HARD_LINKS            EQUATE(00400000h)
FILE_SUPPORTS_OBJECT_IDS            EQUATE(0010000h)
FILE_SUPPORTS_OPEN_BY_FILE_ID       EQUATE(001000000h)
FILE_SUPPORTS_REPARSE_POINTS        EQUATE(080h)
FILE_SUPPORTS_SPARSE_FILES          EQUATE(040h)
FILE_SUPPORTS_TRANSACTIONS          EQUATE(00200000h)
FILE_SUPPORTS_USN_JOURNAL           EQUATE(002000000h)
!FILE_UNICODE_ON_DISK                EQUATE(04h)
!FILE_VOLUME_IS_COMPRESSED           EQUATE(080h)
FILE_VOLUME_QUOTAS                  EQUATE(020h)






!// Values for system call for retreiving smart attributes
!DFP_RECEIVE_DRIVE_DATA EQUATE(07C088h)
SMART_READ_ATTRIBUTE_VALUES EQUATE(0D0h)
IDE_EXECUTE_SMART_FUNCTION EQUATE(0B0h)
SMART_CYL_LOW EQUATE(04Fh)
SMART_CYL_HI        EQUATE(0C2h)
SMART_ENABLE_SMART_OPERATIONS EQUATE(0D8h)

ComputerNameNetBIOS equate(0)
ComputerNameDnsHostname equate(1)
ComputerNameDnsDomain equate(2)
ComputerNameDnsFullyQualified equate(3)
ComputerNamePhysicalNetBIOS equate(4)
ComputerNamePhysicalDnsHostname equate(5)
ComputerNamePhysicalDnsDomain equate(6)
ComputerNamePhysicalDnsFullyQualified equate(7)

PropertyStandardQuery EQUATE(0)
PropertyExistsQuery  EQUATE(1)                               ! 
PropertyMaskQuery    EQUATE(2)                               ! 
PropertyQueryMaxDefined EQUATE(3)                            ! 

AtaDataTypeIdentify EQUATE(1)
AtaDataTypeLogPage                                                  EQUATE(2)
BoardType_ConnectivitySwitch                                        EQUATE(04h)
BoardType_Daughterboard                                             EQUATE(09h)
BoardType_Interconnectboard                                         EQUATE(0Dh)
BoardType_IOModule                                                  EQUATE(07h)
BoardType_MemoryModule                                              EQUATE(08h)
BoardType_Motherboard                                               EQUATE(0Ah)
BoardType_Other                                                     EQUATE(02h)
BoardType_ProcessorIOModule                                         EQUATE(0Ch)
BoardType_ProcessorMemoryModule                                     EQUATE(0Bh)
BoardType_ProcessorModule                                           EQUATE(06h)
BoardType_ServerBlade                                               EQUATE(03h)
BoardType_SystemManagementModule                                    EQUATE(05h)
BoardType_Unknown   EQUATE(01h)

BUSTYPE_ACPIBus                                                     EQUATE(17)
BUSTYPE_CBus                                                        EQUATE(9)
BUSTYPE_Eisa                                                        EQUATE(2)
BUSTYPE_InterfaceTypeUndefined                                      EQUATE(-1)
BUSTYPE_Internal                                                    EQUATE(0)
BUSTYPE_InternalPowerBus                                            EQUATE(13)
BUSTYPE_Isa                                                         EQUATE(1)
BUSTYPE_MaximumInterfaceType                                        EQUATE(18)
BUSTYPE_MicroChannel                                                EQUATE(3)
BUSTYPE_MPIBus                                                      EQUATE(10)
BUSTYPE_MPSABus                                                     EQUATE(11)
BUSTYPE_NuBus                                                       EQUATE(7)
BUSTYPE_PCIBus                                                      EQUATE(5)
BUSTYPE_PCMCIABus                                                   EQUATE(8)
BUSTYPE_PNPBus                                                      EQUATE(15)
BUSTYPE_PNPISABus                                                   EQUATE(14)
BUSTYPE_ProcessorInternal                                           EQUATE(12)
BUSTYPE_TurboChannel                                                EQUATE(4)
BUSTYPE_Vmcs                                                        EQUATE(16)
BUSTYPE_VMEBus                                                      EQUATE(6)
BusType1394                                                         EQUATE(04h)
BusTypeAta                                                          EQUATE(03h)
BusTypeAtapi                                                        EQUATE(02h)
BusTypeFibre                                                        EQUATE(06h)
BusTypeFileBackedVirtual                                            EQUATE(0Fh)
BusTypeiScsi                                                        EQUATE(09h)
BusTypeMax                                                          EQUATE(011h)
BusTypeMaxReserved                                                  EQUATE(07Fh)
BusTypeMmc                                                          EQUATE(0Dh)
BusTypeRAID                                                         EQUATE(08h)
BusTypeSas                                                          EQUATE(0Ah)
BusTypeSata                                                         EQUATE(0Bh)
BusTypeScsi                                                         EQUATE(01h)
BusTypeSd                                                           EQUATE(0Ch)
BusTypeSpaces                                                       EQUATE(010h)
BusTypeSsa                                                          EQUATE(05h)
BusTypeUnknown                                                      EQUATE(0)
BusTypeUsb                                                          EQUATE(07h)
BusTypeVirtual                                                      EQUATE(0Eh)
ChassisStates_Critical                                              EQUATE(05h)
ChassisStates_NonRecoverable                                        EQUATE(06h)
ChassisStates_Other                                                 EQUATE(01h)
ChassisStates_Safe                                                  EQUATE(03h)
ChassisStates_Unknown                                               EQUATE(02h)
ChassisStates_Warning                                               EQUATE(04h)
ChassisType_AdvancedTCA                                             EQUATE(01Bh)
ChassisType_AllinOne                                                EQUATE(0Dh)
ChassisType_Blade                                                   EQUATE(01Ch)
ChassisType_BusExpansionChassis                                     EQUATE(014h)
ChassisType_CompactPCI                                              EQUATE(01Ah)
ChassisType_Convertible                                             EQUATE(01Fh)
ChassisType_Desktop                                                 EQUATE(03h)
ChassisType_Detachable                                              EQUATE(020h)
ChassisType_DockingStation                                          EQUATE(0Ch)
ChassisType_EmbeddedPC                                              EQUATE(022h)
ChassisType_ExpansionChassis                                        EQUATE(012h)
ChassisType_HandHeld                                                EQUATE(0Bh)
ChassisType_IoTGateway                                              EQUATE(021h)
ChassisType_Laptop                                                  EQUATE(09h)
ChassisType_LowProfileDesktop                                       EQUATE(04h)
ChassisType_LunchBox                                                EQUATE(010h)
ChassisType_MainServerChassis                                       EQUATE(011h)
ChassisType_MiniPC                                                  EQUATE(023h)
ChassisType_MiniTower                                               EQUATE(06h)
ChassisType_MultiSystemChassis                                      EQUATE(019h)
ChassisType_Notebook                                                EQUATE(0Ah)
ChassisType_Other                                                   EQUATE(01h)
ChassisType_PeripheralChassis                                       EQUATE(015h)
ChassisType_PizzaBox                                                EQUATE(05h)
ChassisType_Portable                                                EQUATE(08h)
ChassisType_RackMountChassis                                        EQUATE(017h)
ChassisType_RAIDChassis                                             EQUATE(016h)
ChassisType_SealedCasePC                                            EQUATE(018h)
ChassisType_SpaceSaving                                             EQUATE(0Fh)
ChassisType_StickPC                                                 EQUATE(024h)
ChassisType_SubChassis                                              EQUATE(013h)
ChassisType_SubNotebook                                             EQUATE(0Eh)
ChassisType_Tablet                                                  EQUATE(01Eh)
ChassisType_Tower                                                   EQUATE(07h)
ChassisType_Unknown                                                 EQUATE(02h)
CPUType_CentralProcessor                                            EQUATE(03h)
CPUType_DSPProcessor                                                EQUATE(05h)
CPUType_MathProcessor                                               EQUATE(04h)
CPUType_Other                                                       EQUATE(01h)
CPUType_Unknown                                                     EQUATE(02h)
CPUType_VideoProcessor      EQUATE(06h)

!
!MAX_POINT_OF_SERVICE_IOCTL_READ                                     EQUATE(5521584)
!MAX_POINT_OF_SERVICE_IOCTL_WRITE                                    EQUATE(5537968)
!MAXIMUM_ALLOWED                                                     EQUATE(02000000h)
!MFT_BITMAP                                                          EQUATE(0B0h)
!MFT_DATA                                                            EQUATE(080h)
!MFT_FILE_NAME                                                       EQUATE(030h)
!MFT_INDEX_ALLOCATION                                                EQUATE(0A0h)
!MFT_STANDARD_INFORMATION                                            EQUATE(010h)
!MIN_POINT_OF_SERVICE_IOCTL_READ                                     EQUATE(5521408)
!MIN_POINT_OF_SERVICE_IOCTL_WRITE                                    EQUATE(5537792)
!NLB_IOCTL_REGISTER_HOOK                                             EQUATE(3233841224)
!NLB_PUBLIC_IOCTL_CLIENT_STICKINESS_NOTIFY                           EQUATE(3233841236)
!NOTSYNCHRONIZE                                                      EQUATE(0FFEFFFFFh)
!OBSOLETE_DISK_GET_WRITE_CACHE_STATE                                 EQUATE(475356)
!OBSOLETE_IOCTL_CDROM_GET_CONTROL                                    EQUATE(147508)
!OBSOLETE_IOCTL_STORAGE_RESET_BUS                                    EQUATE(3002368)
!OBSOLETE_IOCTL_STORAGE_RESET_DEVICE                                 EQUATE(3002372)
!OWN_ERROR_IO_INCOMPLETE                                             EQUATE(996)
!OWN_ERROR_IO_PENDING                                                EQUATE(997)
!POS_CM_DEVCAP_DOCKDEVICE                                            EQUATE(4)
!POS_CM_DEVCAP_EJECTSUPPORTED                                        EQUATE(2)
!POS_CM_DEVCAP_HARDWAREDISABLED                                      EQUATE(9)
!POS_CM_DEVCAP_LOCKSUPPORTED                                         EQUATE(1)
!POS_CM_DEVCAP_NONDYNAMIC                                            EQUATE(10)
!POS_CM_DEVCAP_RAWDEVICEOK                                           EQUATE(7)
!POS_CM_DEVCAP_REMOVABLE                                             EQUATE(3)
!POS_CM_DEVCAP_SILENTINSTALL                                         EQUATE(6)
!POS_CM_DEVCAP_SURPRISEREMOVALOK                                     EQUATE(8)
!POS_CM_DEVCAP_UNIQUEID                                              EQUATE(5)
!ProtocolTypeAta                                                     EQUATE(2)
!ProtocolTypeMaxReserved                                             EQUATE(127)
!ProtocolTypeNvme                                                    EQUATE(3)
!ProtocolTypeProprietary                                             EQUATE(126)
!ProtocolTypeScsi                                                    EQUATE(1)
!ProtocolTypeSd                                                      EQUATE(4)
!ProtocolTypeUnknown                                                 EQUATE(0)
!SCARD_IOCTL_ADDREADERTOGROUPA                                       EQUATE(589936)
!SCARD_IOCTL_ADDREADERTOGROUPW                                       EQUATE(589940)
!SCARD_IOCTL_FORGETREADERA                                           EQUATE(589928)
!SCARD_IOCTL_FORGETREADERGROUPA                                      EQUATE(589912)
!SCARD_IOCTL_FORGETREADERGROUPW                                      EQUATE(589916)
!SCARD_IOCTL_FORGETREADERW                                           EQUATE(589932)
!SCARD_IOCTL_INTRODUCEREADERA                                        EQUATE(589920)
!SCARD_IOCTL_INTRODUCEREADERGROUPA                                   EQUATE(589904)
!SCARD_IOCTL_INTRODUCEREADERGROUPW                                   EQUATE(589908)
!SCARD_IOCTL_INTRODUCEREADERW                                        EQUATE(589924)
!SCARD_IOCTL_LISTREADERGROUPSA                                       EQUATE(589856)
!SCARD_IOCTL_LISTREADERGROUPSW                                       EQUATE(589860)
!SCARD_IOCTL_LISTREADERSA                                            EQUATE(589864)
!SCARD_IOCTL_LISTREADERSW                                            EQUATE(589868)
!SCARD_IOCTL_REMOVEREADERFROMGROUPA                                  EQUATE(589944)
!SCARD_IOCTL_REMOVEREADERFROMGROUPW                                  EQUATE(589948)
SecurityStatus_ExternalIntEnabled                                   EQUATE(05h)
SecurityStatus_ExternalIntLockout                                   EQUATE(04h)
SecurityStatus_None                                                 EQUATE(03h)
SecurityStatus_Other                                                EQUATE(01h)
SecurityStatus_Unknown                                              EQUATE(02h)
!SMART_GET_VERSION                                                   EQUATE(475264)
!SMART_RCV_DRIVE_DATA                                                EQUATE(508040)
!SMART_SEND_DRIVE_COMMAND                                            EQUATE(508036)
!StorageAccessAlignmentProperty                                      EQUATE(6)
!StorageAdapterPhysicalTopologyProperty                              EQUATE(53)
!StorageAdapterProperty                                              EQUATE(1)
!StorageAdapterProtocolSpecificProperty                              EQUATE(49)
!StorageDeviceAttributesProperty                                     EQUATE(55)
!StorageDeviceCopyOffloadProperty                                    EQUATE(13)
!StorageDeviceDeviceTelemetryProperty                                EQUATE(10)
!StorageDeviceIdProperty                                             EQUATE(2)
!StorageDeviceIoCapabilityProperty                                   EQUATE(48)
!StorageDeviceLBProvisioningProperty                                 EQUATE(11)
!StorageDeviceMediumProductType                                      EQUATE(15)
!StorageDevicePhysicalTopologyProperty                               EQUATE(54)
!StorageDevicePowerProperty                                          EQUATE(12)
!StorageDeviceProperty                                               EQUATE(0)
!StorageDeviceProtocolSpecificProperty                               EQUATE(50)
!StorageDeviceResiliencyProperty                                     EQUATE(14)
!StorageDeviceSeekPenaltyProperty                                    EQUATE(7)
!StorageDeviceTemperatureProperty                                    EQUATE(52)
!StorageDeviceTrimProperty                                           EQUATE(8)
!StorageDeviceUniqueIdProperty                                       EQUATE(3)
!StorageDeviceWriteAggregationProperty                               EQUATE(9)
!StorageDeviceWriteCacheProperty                                     EQUATE(4)
!StorageMiniportProperty                                             EQUATE(5)

StorageDeviceProperty                                               EQUATE(0)
StorageAdapterProperty                                              EQUATE(1)
StorageDeviceIdProperty                                             EQUATE(2)
StorageDeviceUniqueIdProperty                                       EQUATE(3)
StorageDeviceWriteCacheProperty                                     EQUATE(4)
StorageMiniportProperty                                             EQUATE(5)                        
StorageAccessAlignmentProperty                                      EQUATE(6)
StorageDeviceSeekPenaltyProperty                                    EQUATE(7)
StorageDeviceTrimProperty                                           EQUATE(8)
StorageDeviceWriteAggregationProperty                               EQUATE(9)
StorageDeviceDeviceTelemetryProperty                                EQUATE(10)
StorageDeviceLBProvisioningProperty                                 EQUATE(11)
StorageDevicePowerProperty                                          EQUATE(12)
StorageDeviceCopyOffloadProperty                                    EQUATE(13)
StorageDeviceResiliencyProperty                                     EQUATE(14)
StorageDeviceMediumProductType                                      EQUATE(15)
StorageAdapterRpmbProperty                                          EQUATE(16)
StorageAdapterCryptoProperty                                        EQUATE(17)

StorageDeviceTieringProperty                                        EQUATE(18)
StorageDeviceFaultDomainProperty                                    EQUATE(19)
StorageDeviceClusportProperty                                       EQUATE(20)
StorageDeviceDependantDevicesProperty                               EQUATE(21)

StorageDeviceIoCapabilityProperty                                   EQUATE(48)
StorageAdapterProtocolSpecificProperty                              EQUATE(49)
StorageDeviceProtocolSpecificProperty                               EQUATE(50)
StorageAdapterTemperatureProperty                                   EQUATE(51)
StorageDeviceTemperatureProperty                                    EQUATE(52)
StorageAdapterPhysicalTopologyProperty                              EQUATE(53)
StorageDevicePhysicalTopologyProperty                               EQUATE(54)

StorageDeviceAttributesProperty                                     EQUATE(55)
StorageDeviceManagementStatus                                       EQUATE(56)
StorageAdapterSerialNumberProperty                                  EQUATE(57)
StorageDeviceLocationProperty                                       EQUATE(58)
StorageDeviceNumaProperty                                           EQUATE(59)
StorageDeviceZonedDeviceProperty                                    EQUATE(60)
StorageDeviceUnsafeShutdownCount                                    EQUATE(61)
StorageDeviceEnduranceProperty                                      EQUATE(62)

!!StorageDeviceDependantDevicesProperty                               EQUATE()
!!
!!StorageAdapterPhysicalTopologyProperty                              EQUATE(53)
!!StorageAdapterProtocolSpecificProperty                              EQUATE(49)
!!StorageDeviceAttributesProperty                                     EQUATE(55)
!!StorageDeviceIoCapabilityProperty                                   EQUATE(48)
!!
!!StorageDevicePhysicalTopologyProperty                               EQUATE(54)
!!StorageDeviceProtocolSpecificProperty                               EQUATE(50)
!!StorageDeviceTemperatureProperty                                    EQUATE(52)



FILE_DEVICE_8042_PORT           EQUATE(000000027H)
FILE_DEVICE_ACPI                EQUATE(000000032H)
FILE_DEVICE_BATTERY             EQUATE(000000029H)
FILE_DEVICE_BEEP                EQUATE(000000001H)
FILE_DEVICE_BUS_EXTENDER        EQUATE(00000002aH)
FILE_DEVICE_CD_ROM              EQUATE(000000002H)
FILE_DEVICE_CD_ROM_FILE_SYSTEM  EQUATE(000000003H)
FILE_DEVICE_CHANGER             EQUATE(000000030H)
FILE_DEVICE_CONTROLLER          EQUATE(000000004H)
FILE_DEVICE_DATALINK            EQUATE(000000005H)
FILE_DEVICE_DFS                 EQUATE(000000006H)
FILE_DEVICE_DFS_FILE_SYSTEM     EQUATE(000000035H)
FILE_DEVICE_DFS_VOLUME          EQUATE(000000036H)
FILE_DEVICE_DISK                EQUATE(000000007H)
FILE_DEVICE_DISK_FILE_SYSTEM    EQUATE(000000008H)
FILE_DEVICE_DVD                 EQUATE(000000033H)
FILE_DEVICE_FILE_SYSTEM         EQUATE(000000009H)
FILE_DEVICE_FIPS                EQUATE(00000003aH)
FILE_DEVICE_FULLSCREEN_VIDEO    EQUATE(000000034H)
FILE_DEVICE_INPORT_PORT         EQUATE(00000000aH)
FILE_DEVICE_KEYBOARD            EQUATE(00000000bH)
FILE_DEVICE_KS                  EQUATE(00000002fH)
FILE_DEVICE_KSEC                EQUATE(000000039H)
FILE_DEVICE_MAILSLOT            EQUATE(00000000cH)
FILE_DEVICE_MASS_STORAGE        EQUATE(00000002dH)
FILE_DEVICE_MIDI_IN             EQUATE(00000000dH)
FILE_DEVICE_MIDI_OUT            EQUATE(00000000eH)
FILE_DEVICE_MODEM               EQUATE(00000002bH)
FILE_DEVICE_MOUSE               EQUATE(00000000fH)
FILE_DEVICE_MULTI_UNC_PROVIDER  EQUATE(000000010H)
FILE_DEVICE_NAMED_PIPE          EQUATE(000000011H)
FILE_DEVICE_NETWORK             EQUATE(000000012H)
FILE_DEVICE_NETWORK_BROWSER     EQUATE(000000013H)
FILE_DEVICE_NETWORK_FILE_SYSTEM EQUATE(000000014H)
FILE_DEVICE_NETWORK_REDIRECTOR  EQUATE(000000028H)
FILE_DEVICE_NULL                EQUATE(000000015H)
FILE_DEVICE_PARALLEL_PORT       EQUATE(000000016H)
FILE_DEVICE_PHYSICAL_NETCARD    EQUATE(000000017H)
FILE_DEVICE_PRINTER             EQUATE(000000018H)
FILE_DEVICE_SCANNER             EQUATE(000000019H)
FILE_DEVICE_SCREEN              EQUATE(00000001cH)
FILE_DEVICE_SERENUM             EQUATE(000000037H)
FILE_DEVICE_SERIAL_MOUSE_PORT   EQUATE(00000001aH)
FILE_DEVICE_SERIAL_PORT         EQUATE(00000001bH)
FILE_DEVICE_SMARTCARD           EQUATE(000000031H)
FILE_DEVICE_SMB                 EQUATE(00000002eH)
FILE_DEVICE_SOUND               EQUATE(00000001dH)
FILE_DEVICE_STREAMS             EQUATE(00000001eH)
FILE_DEVICE_TAPE                EQUATE(00000001fH)
FILE_DEVICE_TAPE_FILE_SYSTEM    EQUATE(000000020H)
FILE_DEVICE_TERMSRV             EQUATE(000000038H)
FILE_DEVICE_TRANSPORT           EQUATE(000000021H)
FILE_DEVICE_UNKNOWN             EQUATE(000000022H)
FILE_DEVICE_VDM                 EQUATE(00000002cH)
FILE_DEVICE_VIDEO               EQUATE(000000023H)
FILE_DEVICE_VIRTUAL_DISK        EQUATE(000000024H)
FILE_DEVICE_WAVE_IN             EQUATE(000000025H)
FILE_DEVICE_WAVE_OUT            EQUATE(000000026H)


WRITE_CACHE_TYPE_WriteCacheTypeUnknown          EQUATE(0)
WRITE_CACHE_TYPE_WriteCacheTypeNone             EQUATE(1)
WRITE_CACHE_TYPE_WriteCacheTypeWriteBack        EQUATE(2)
WRITE_CACHE_TYPE_WriteCacheTypeWriteThrough     EQUATE(3)

WRITE_CACHE_ENABLE_WriteCacheEnableUnknown      EQUATE(0)
WRITE_CACHE_ENABLE_WriteCacheDisabled           EQUATE(1)
WRITE_CACHE_ENABLE_WriteCacheEnabled            EQUATE(2)

WRITE_CACHE_CHANGE_WriteCacheChangeUnknown      EQUATE(0)
WRITE_CACHE_CHANGE_WriteCacheNotChangeable      EQUATE(1)
WRITE_CACHE_CHANGE_WriteCacheChangeable         EQUATE(2)

WRITE_THROUGH_WriteThroughUnknown               EQUATE(0)
WRITE_THROUGH_WriteThroughNotSupported          EQUATE(1)
WRITE_THROUGH_WriteThroughSupported             EQUATE(2)


SMART_READ_ATTRIBUTES           EQUATE(00D0h)
SMART_READ_THRESHOLDS           EQUATE(00D1h)
SMART_ENABLE_DISABLE_AUTOSAVE   EQUATE(00D2h)
SMART_SAVE_ATTRIBUTE_VALUES     EQUATE(00D3h)
SMART_EXECUTE_OFFLINE_DIAGS     EQUATE(00D4h)
SMART_SMART_READ_LOG            EQUATE(00D5h)
SMART_SMART_WRITE_LOG           EQUATE(00d6h)
SMART_ENABLE_SMART              EQUATE(00D8h)
SMART_DISABLE_SMART             EQUATE(00D9h)
SMART_RETURN_SMART_STATUS       EQUATE(00DAh)
SMART_ENABLE_DISABLE_AUTO_OFFLINE EQUATE(00DBh)
IDENTIFY_BUFFER_SIZE            EQUATE(0512)
DFP_GET_VERSION                 EQUATE(0074080H)
DFP_SEND_DRIVE_COMMAND          EQUATE(007c084H)
DFP_RECEIVE_DRIVE_DATA          EQUATE(007c088H)
FILE_DEVICE_SCSI                EQUATE(001bH)
ATAPI_ID_CMD                    EQUATE(00A1h)
ID_CMD                          EQUATE(00ECh)
SMART_CMD                       EQUATE(00B0h)

ERROR_IO_PENDING EQUATE(997)

!StorageDeviceProperty               EQUATE(0)                                 ! 
!StorageAdapterProperty              EQUATE(1)                             ! 
!StorageDeviceIdProperty             EQUATE(2)                            ! 
!StorageDeviceUniqueIdProperty       EQUATE(3)                      ! 
!StorageDeviceWriteCacheProperty     EQUATE(4)                    ! 
!StorageMiniportProperty             EQUATE(5)                            ! 
!StorageAccessAlignmentProperty      EQUATE(6)                     ! 
!StorageDeviceSeekPenaltyProperty    EQUATE(7)                   ! 
!StorageDeviceTrimProperty           EQUATE(8)                          ! 
!StorageDeviceWriteAggregationProperty EQUATE(9)              ! 
!StorageDeviceDeviceTelemetryProperty EQUATE(10)              ! 
!StorageDeviceLBProvisioningProperty EQUATE(11)               ! 
!StorageDevicePowerProperty          EQUATE(12)                        ! 
!StorageDeviceCopyOffloadProperty    EQUATE(13)                  ! 
!StorageDeviceResiliencyProperty     EQUATE(14)                   ! 
!StorageDeviceMediumProductType      EQUATE(15)                    ! 
!StorageAdapterCryptoProperty        EQUATE(16)                      ! 
!StorageDeviceIoCapabilityProperty   EQUATE(48)                 ! 
!StorageAdapterProtocolSpecificProperty EQUATE(49)            ! 
!StorageDeviceProtocolSpecificProperty EQUATE(50)             ! 
!StorageAdapterTemperatureProperty   EQUATE(51)                 !

and some more (i will upload soon a working stripped app with only this functionality)

but for now …

PopulateQSysClasses ROUTINE

QSysClasses.NameA          = 'Adapter'
QSysClasses.ClassNameA     = 'Adapter'
QSysClasses.GuidA          = '4d36e964-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA   = 'This class is obsolete.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'AMP'
QSysClasses.ClassNameA     = 'APMSupport'
QSysClasses.GuidA          = 'd45b1c18-c8fa-11d1-9f77-0000f805f530'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Computer'
QSysClasses.ClassNameA     = 'Computer'
QSysClasses.GuidA          = '4d36e966-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Decoder'
QSysClasses.ClassNameA     = 'Decoder'
QSysClasses.GuidA          = '6bdd1fc2-810f-11d0-bec7-08002be2092f'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Host-side IEEE 1394 Kernel Debugger Support'
QSysClasses.ClassNameA     = '1394Debug'
QSysClasses.GuidA          = '66f250d6-7801-4a64-b139-eea80a450b24'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'IEEE 1394 IP Network Enumerator'
QSysClasses.ClassNameA     = 'Enum1394'
QSysClasses.GuidA          = 'c459df55-db08-11d1-b009-00a0c9081ff6'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'No driver'
QSysClasses.ClassNameA     = 'NoDriver'
QSysClasses.GuidA          = '4d36e976-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Non-Plug and Play Drivers'
QSysClasses.ClassNameA     = 'LegacyDriver'
QSysClasses.GuidA          = '8ecc055d-047f-11d1-a537-0000f8753ed1'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Other Devices'
QSysClasses.ClassNameA     = 'Unknown'
QSysClasses.GuidA          = '4d36e97e-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA   = 'This class is reserved for system use. Enumerated devices for which the system cannot determine the type are installed under this class. Do not use this class if you are unsure in which class your device belongs. Either determine the correct device setup class or create a new class.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Printer Upgrade'
QSysClasses.ClassNameA     = 'PrinterUpgrade'
QSysClasses.GuidA          = '4d36e97a-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Sound'
QSysClasses.ClassNameA     = 'Sound'
QSysClasses.GuidA          = '4d36e97c-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA   = 'This class is obsolete.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'Storage Volume Snapshots'
QSysClasses.ClassNameA     = 'VolumeSnapshot'
QSysClasses.GuidA          = '533c5b84-ec70-11d2-9505-00c04F79deaf'
QSysClasses.DescriptionA   = 'This class is reserved for system use.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    

QSysClasses.NameA          = 'USB Bus Devices (hubs and host controllers)'
QSysClasses.ClassNameA     = 'USB'
QSysClasses.GuidA          = '36fc9e60-c465-11cf-8056-444553540000'
QSysClasses.DescriptionA   = 'This class includes USB host controllers and USB hubs, but not USB peripherals. Drivers for this class are system-supplied.'
QSysClasses.SystemUse     = 1
Add(QSysClasses)    





QSysClasses.NameA = 'Battery Devices'
QSysClasses.ClassNameA = 'Battery'
QSysClasses.GuidA = '72631e54-78a4-11d0-bcf7-00aa00b7b32a'
QSysClasses.DescriptionA = 'This class includes battery devices and UPS devices'
Add(QSysClasses)

QSysClasses.NameA = 'Biometric Device'
QSysClasses.ClassNameA = 'Biometric'
QSysClasses.GuidA = '53D29EF7-377C-4D14-864B-EB3A85769359'
QSysClasses.DescriptionA = '(Windows Server 2003 and later versions of Windows) This class includes all biometric-based personal identification devices'
Add(QSysClasses)

QSysClasses.NameA = 'Bluetooth Devices'
QSysClasses.ClassNameA = 'Bluetooth'
QSysClasses.GuidA = 'e0cbf06c-cd8b-4647-bb8a-263b43f0f974'
QSysClasses.DescriptionA = '(Windows XP SP1 and later versions of Windows) This class includes all Bluetooth devices'
Add(QSysClasses)

QSysClasses.NameA = 'CD-ROM Drives'
QSysClasses.ClassNameA = 'CDROM'
QSysClasses.GuidA = '4d36e965-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes CD-ROM drives, including SCSI CD-ROM drives By default, the systems CD-ROM class installer also installs a system-supplied CD audio driver and CD-ROM changer driver as Plug and Play filters'
Add(QSysClasses)

QSysClasses.NameA = 'Disk Drives'
QSysClasses.ClassNameA = 'DiskDrive'
QSysClasses.GuidA = '4d36e967-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes hard disk drives See also the HDC and SCSIAdapter classes'
Add(QSysClasses)

QSysClasses.NameA = 'Display Adapters'
QSysClasses.ClassNameA = 'Display'
QSysClasses.GuidA = '4d36e968-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes video adapters Drivers for this class include display drivers and video miniport drivers'
Add(QSysClasses)

QSysClasses.NameA = 'Floppy Disk Controllers'
QSysClasses.ClassNameA = 'FDC'
QSysClasses.GuidA = '4d36e969-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes floppy disk drive controllers'
Add(QSysClasses)

QSysClasses.NameA = 'Floppy Disk Drives'
QSysClasses.ClassNameA = 'FloppyDisk'
QSysClasses.GuidA = '4d36e980-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes floppy disk drives'
Add(QSysClasses)

QSysClasses.NameA = 'Hard Disk Controllers'
QSysClasses.ClassNameA = 'HDC'
QSysClasses.GuidA = '4d36e96a-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes hard disk controllers, including ATA/ATAPI controllers but not SCSI and RAID disk controllers'
Add(QSysClasses)

QSysClasses.NameA = 'Human Interface Devices (HID)'
QSysClasses.ClassNameA = 'HIDClass'
QSysClasses.GuidA = '745a17a0-74d3-11d0-b6fe-00a0c90f57da'
QSysClasses.DescriptionA = 'This class includes interactive input devices that are operated by the system-supplied HID class driver This includes USB devices that comply with the USB HID Standard and non-USB devices that use a HID minidriver. For more information, see HIDClass Device Setup Class (See also the Keyboard or Mouse classes later in this list)'
Add(QSysClasses)

QSysClasses.NameA = 'IEEE 1284-4 Devices'
QSysClasses.ClassNameA = 'Dot4'
QSysClasses.GuidA = '48721b56-6795-11d2-b1a8-0080c72e74a2'
QSysClasses.DescriptionA = 'This class includes devices that control the operation of multifunction IEEE 1284-4 peripheral devices'
Add(QSysClasses)

QSysClasses.NameA = 'IEEE 1284-4 Print Functions'
QSysClasses.ClassNameA = 'Dot4Print'
QSysClasses.GuidA = '49ce6ac8-6f86-11d2-b1e5-0080c72e74a2'
QSysClasses.DescriptionA = 'This class includes Dot4 print functions A Dot4 print function is a function on a Dot4 device and has a single child device, which is a member of the Printer device setup class'
Add(QSysClasses)

QSysClasses.NameA = 'IEEE 1394 Devices That Support the 61883 Protocol'
QSysClasses.ClassNameA = '61883'
QSysClasses.GuidA = '7ebefbc0-3200-11d2-b4c2-00a0C9697d07'
QSysClasses.DescriptionA = 'This class includes IEEE 1394 devices that support the IEC-61883 protocol device class'
!The 61883 component includes the 61883'sys protocol driver that transmits various audio and video data streams over the 1394 bus' These currently include standard/high/low quality DV, MPEG2, DSS, and Audio' These data streams are defined by the IEC-61883 specifications'
Add(QSysClasses)

QSysClasses.NameA = 'IEEE 1394 Devices That Support the AVC Protocol'
QSysClasses.ClassNameA = 'AVC'
QSysClasses.GuidA = 'c06ff265-ae09-48f0-812c-16753d7cba83'
QSysClasses.DescriptionA = 'This class includes IEEE 1394 devices that support the AVC protocol device class'
Add(QSysClasses)

QSysClasses.NameA = 'IEEE 1394 Devices That Support the SBP2 Protocol'
QSysClasses.ClassNameA = 'SBP2'
QSysClasses.GuidA = 'd48179be-ec20-11d1-b6b8-00c04fa372a7'
QSysClasses.DescriptionA = 'This class includes IEEE 1394 devices that support the SBP2 protocol device class'
Add(QSysClasses)

QSysClasses.NameA = 'IEEE 1394 Host Bus Controller'
QSysClasses.ClassNameA = '1394'
QSysClasses.GuidA = '6bdd1fc1-810f-11d0-bec7-08002be2092f'
QSysClasses.DescriptionA = 'This class includes 1394 host controllers connected on a PCI bus, but not 1394 peripherals Drivers for this class are system-supplied'
Add(QSysClasses)

QSysClasses.NameA = 'Imaging Device'
QSysClasses.ClassNameA = 'Image'
QSysClasses.GuidA = '6bdd1fc6-810f-11d0-bec7-08002be2092f'
QSysClasses.DescriptionA = 'This class includes still-image capture devices, digital cameras, and scanners'
Add(QSysClasses)

QSysClasses.NameA = 'IrDA Devices'
QSysClasses.ClassNameA = 'Infrared'
QSysClasses.GuidA = '6bdd1fc5-810f-11d0-bec7-08002be2092f'
QSysClasses.DescriptionA = 'This class includes infrared devices Drivers for this class include Serial-IR and Fast-IR NDIS miniports, but see also the Network Adapter class for other NDIS network adapter miniports'
Add(QSysClasses)

QSysClasses.NameA = 'Keyboard'
QSysClasses.ClassNameA = 'Keyboard'
QSysClasses.GuidA = '4d36e96b-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes all keyboards That is, it must also be specified in the (secondary) INF for an enumerated child HID keyboard device'
Add(QSysClasses)

QSysClasses.NameA = 'Media Changers'
QSysClasses.ClassNameA = 'MediumChanger'
QSysClasses.GuidA = 'ce5939ae-ebde-11d0-b181-0000f8753ec4'
QSysClasses.DescriptionA = 'This class includes SCSI media changer devices'
Add(QSysClasses)

QSysClasses.NameA = 'Memory Technology Driver'
QSysClasses.ClassNameA = 'MTD'
QSysClasses.GuidA = '4d36e970-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes memory devices, such as flash memory cards'
Add(QSysClasses)

QSysClasses.NameA = 'Modem'
QSysClasses.ClassNameA = 'Modem'
QSysClasses.GuidA = '4d36e96d-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes modem devices An INF file for a device of this class specifies the features and configuration of the device and stores this information in the registry An INF file for a device of this class can also be used to install device drivers for a controllerless modem or a software modem. These devices split the functionality between the modem device and the device driver. For more information about modem INF files and Microsoft Windows Driver Model (WDM) modem devices, see Overview of Modem INF Files and Adding WDM Modem Support'
Add(QSysClasses)

QSysClasses.NameA = 'Monitor'
QSysClasses.ClassNameA = 'Monitor'
QSysClasses.GuidA = '4d36e96e-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes display monitors An INF for a device of this class installs no device driver(s), but instead specifies the features of a particular monitor to be stored in the registry for use by drivers of video adapters. (Monitors are enumerated as the child devices of display adapters)'
Add(QSysClasses)

QSysClasses.NameA = 'Mouse'
QSysClasses.ClassNameA = 'Mouse'
QSysClasses.GuidA = '4d36e96f-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes all mouse devices and other kinds of pointing devices, such as trackballs. That is, this class must also be specified in the (secondary) INF for an enumerated child HID mouse device'
Add(QSysClasses)

QSysClasses.NameA = 'Multifunction Devices'
QSysClasses.ClassNameA = 'Multifunction'
QSysClasses.GuidA = '4d36e971-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes combo cards, such as a PCMCIA modem and netcard adapter. The driver for such a Plug and Play multifunction device is installed under this class and enumerates the modem and netcard separately as its child devices'
Add(QSysClasses)

QSysClasses.NameA = 'Multimedia'
QSysClasses.ClassNameA = 'Media'
QSysClasses.GuidA = '4d36e96c-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes Audio and DVD multimedia devices, joystick ports, and full-motion video capture devices'
Add(QSysClasses)

QSysClasses.NameA = 'Multiport Serial Adapters'
QSysClasses.ClassNameA = 'MultiportSerial'
QSysClasses.GuidA = '50906cb8-ba12-11d1-bf5d-0000f805f530'
QSysClasses.DescriptionA = 'This class includes intelligent multiport serial cards, but not peripheral devices that connect to its ports. It does not include unintelligent (16550-type) multiport serial controllers or single-port serial controllers (see the Ports class)'
Add(QSysClasses)

QSysClasses.NameA = 'Network Adapter'
QSysClasses.ClassNameA = 'Net'
QSysClasses.GuidA = '4d36e972-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes NDIS miniport drivers excluding Fast-IR miniport drivers, NDIS intermediate drivers (of virtual adapters), and CoNDIS MCM miniport drivers'
Add(QSysClasses)

QSysClasses.NameA = 'Network Client'
QSysClasses.ClassNameA = 'NetClient'
QSysClasses.GuidA = '4d36e973-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes network and/or print providers'
!Note  NetClient components are deprecated in Windows 8'1, Windows Server 2012 R2, and later'
Add(QSysClasses)

QSysClasses.NameA = 'Network Service'
QSysClasses.ClassNameA = 'NetService'
QSysClasses.GuidA = '4d36e974-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes network services, such as redirectors and servers'
Add(QSysClasses)

QSysClasses.NameA = 'Network Transport'
QSysClasses.ClassNameA = 'NetTrans'
QSysClasses.GuidA = '4d36e975-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes NDIS protocols CoNDIS stand-alone call managers, and CoNDIS clients, in addition to higher level drivers in transport stacks'
Add(QSysClasses)

QSysClasses.NameA = 'PCI SSL Accelerator'
QSysClasses.ClassNameA = 'SecurityAccelerator'
QSysClasses.GuidA = '268c95a1-edfe-11d3-95c3-0010dc4050a5'
QSysClasses.DescriptionA = 'This class includes devices that accelerate secure socket layer (SSL) cryptographic processing'
Add(QSysClasses)

QSysClasses.NameA = 'PCMCIA Adapters'
QSysClasses.ClassNameA = 'PCMCIA'
QSysClasses.GuidA = '4d36e977-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes PCMCIA and CardBus host controllers, but not PCMCIA or CardBus peripherals. Drivers for this class are system-supplied'
Add(QSysClasses)

QSysClasses.NameA = 'Ports (COM & LPT ports)'
QSysClasses.ClassNameA = 'Ports'
QSysClasses.GuidA = '4d36e978-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes serial and parallel port devices. See also the MultiportSerial class'
Add(QSysClasses)

QSysClasses.NameA = 'Printers'
QSysClasses.ClassNameA = 'Printer'
QSysClasses.GuidA = '4d36e979-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes printers'
Add(QSysClasses)

QSysClasses.NameA = 'Printers, Bus-specific class drivers'
QSysClasses.ClassNameA = 'PNPPrinters'
QSysClasses.GuidA = '4658ee7e-f050-11d1-b6bd-00c04fa372a7'
QSysClasses.DescriptionA = 'This class includes SCSI/1394-enumerated printers. Drivers for this class provide printer communication for a specific bus'
Add(QSysClasses)

QSysClasses.NameA = 'Processors'
QSysClasses.ClassNameA = 'Processor'
QSysClasses.GuidA = '50127dc3-0f36-415e-a6cc-4cb3be910b65'
QSysClasses.DescriptionA = 'This class includes processor types'
Add(QSysClasses)

QSysClasses.NameA = 'SCSI and RAID Controllers'
QSysClasses.ClassNameA = 'SCSIAdapter'
QSysClasses.GuidA = '4d36e97b-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes SCSI HBAs (Host Bus Adapters) and disk-array controllers'
Add(QSysClasses)

QSysClasses.NameA = 'Sensors'
QSysClasses.ClassNameA = 'Sensor'
QSysClasses.GuidA = '5175d334-c371-4806-b3ba-71fd53c9258d'
!(Windows 7 and later versions of Windows)
QSysClasses.DescriptionA = 'This class includes sensor and location devices, such as GPS devices'
Add(QSysClasses)

QSysClasses.NameA = 'Smart Card Readers'
QSysClasses.ClassNameA = 'SmartCardReader'
QSysClasses.GuidA = '50dd5230-ba8a-11d1-bf5d-0000f805f530'
QSysClasses.DescriptionA = 'This class includes smart card readers'
Add(QSysClasses)

QSysClasses.NameA = 'Storage Volumes'
QSysClasses.ClassNameA = 'Volume'
QSysClasses.GuidA = '71a27cdd-812a-11d0-bec7-08002be2092f'
QSysClasses.DescriptionA = 'This class includes storage volumes as defined by the system-supplied logical volume manager and class drivers that create device objects to represent storage volumes, such as the system disk class driver'
Add(QSysClasses)

QSysClasses.NameA = 'System Devices'
QSysClasses.ClassNameA = 'System'
QSysClasses.GuidA = '4d36e97d-e325-11ce-bfc1-08002be10318'
QSysClasses.DescriptionA = 'This class includes HALs, system buses, system bridges, the system ACPI driver, and the system volume manager driver'
Add(QSysClasses)

QSysClasses.NameA = 'Tape Drives'
QSysClasses.ClassNameA = 'TapeDrive'
QSysClasses.GuidA = '6d807884-7d21-11cf-801c-08002be10318'
QSysClasses.DescriptionA = 'This class includes tape drives, including all tape miniclass drivers'
Add(QSysClasses)

QSysClasses.NameA = 'USB Device'
QSysClasses.ClassNameA = 'USBDevice'
QSysClasses.GuidA = '88BAE032-5A81-49f0-BC3D-A4FF138216D6'
QSysClasses.DescriptionA = 'USBDevice includes all USB devices that do not belong to another class. This class is not used for USB host controllers and hubs'
Add(QSysClasses)

QSysClasses.NameA = 'Windows CE USB ActiveSync Devices'
QSysClasses.ClassNameA = 'WCEUSBS'
QSysClasses.GuidA = '25dbce51-6c8f-4a72-8a6d-b54c2b4fc835'
!QSysClasses.DescriptionA = 'This class includes Windows CE ActiveSync devices'
QSysClasses.DescriptionA = 'The WCEUSBS setup class supports communication between a personal computer and a device that is compatible with the Windows CE ActiveSync driver (generally, PocketPC devices) over USB'
Add(QSysClasses)

QSysClasses.NameA = 'Windows Portable Devices (WPD)'
QSysClasses.ClassNameA = 'WPD'
QSysClasses.GuidA = 'eec5ad98-8080-425f-922a-dabf3de3f69a'
QSysClasses.DescriptionA = '(Windows Vista and later versions of Windows) This class includes WPD devices'
Add(QSysClasses)

QSysClasses.NameA = 'Windows SideShow'
QSysClasses.ClassNameA = 'SideShow'
QSysClasses.GuidA = '997b5d8d-c442-4f2e-baf3-9c8e671e9e21'
Add(QSysClasses)



QSysClasses.NameA = 'Camera'
QSysClasses.ClassNameA = 'Camera'
QSysClasses.GuidA = 'ca3e7ab9-b4c3-4ae6-8251-579ef933890f'
Add(QSysClasses)    







QSysClasses.NameA = 'EH Storage Silo'
QSysClasses.ClassNameA = 'EHStorageSilo'
QSysClasses.GuidA = '9da2b80f-f89f-4a49-a5c2-511b085b9e8a'
Add(QSysClasses)    
    
QSysClasses.NameA = 'Extension'
QSysClasses.ClassNameA = 'Extension'
QSysClasses.GuidA = 'e2f84ce7-8efa-411c-aa69-97454ca4cb57'
Add(QSysClasses)    
    
QSysClasses.NameA = 'Firmware'
QSysClasses.ClassNameA = 'Firmware'
QSysClasses.GuidA = 'f2e7dd72-6468-4e36-b6f1-6488f42c1b52'
Add(QSysClasses)    
    
QSysClasses.NameA = 'Gps'
QSysClasses.ClassNameA = 'Gps'
QSysClasses.GuidA = '6bdd1fc3-810f-11d0-bec7-08002be2092f'
Add(QSysClasses)    

QSysClasses.NameA = 'Holographic'
QSysClasses.ClassNameA = 'Holographic'
QSysClasses.GuidA = 'd612553d-06b1-49ca-8938-e39ef80eb16f'
Add(QSysClasses)    

QSysClasses.NameA = 'Infiniband'
QSysClasses.ClassNameA = 'Infiniband'
QSysClasses.GuidA = '30ef7132-d858-4a0c-ac24-b9028a5cca3f'
Add(QSysClasses)    
                 
QSysClasses.NameA = 'Memory'
QSysClasses.ClassNameA = 'Memory'
QSysClasses.GuidA = '5099944a-f6b9-4057-a056-8c550228544c'
Add(QSysClasses)    
 
QSysClasses.NameA = 'NetDriver'
QSysClasses.ClassNameA = 'NetDriver'
QSysClasses.GuidA = '87ef9ad1-8f70-49ee-b215-ab1fcadcbe3c'
Add(QSysClasses)    
 
QSysClasses.NameA = 'PrintQueue'
QSysClasses.ClassNameA = 'PrintQueue'
QSysClasses.GuidA = '1ed2bbf9-11f0-4084-b21f-ad83a8e6dcdc'
Add(QSysClasses)    

QSysClasses.NameA = 'ScmDisk'
QSysClasses.ClassNameA = 'ScmDisk'
QSysClasses.GuidA = '53966cb1-4d46-4166-bf23-c522403cd495'
Add(QSysClasses)    

QSysClasses.NameA = 'ScmVolume'
QSysClasses.ClassNameA = 'ScmVolume'
QSysClasses.GuidA = '53ccb149-e543-4c84-b6e0-bce4f6b7e806'
Add(QSysClasses)    
 
QSysClasses.NameA = 'SmrDisk'
QSysClasses.ClassNameA = 'SmrDisk'
QSysClasses.GuidA = '53487c23-680f-4585-acc3-1f10d6777e82'
Add(QSysClasses)    


QSysClasses.NameA = 'SmrVolume'
QSysClasses.ClassNameA = 'SmrVolume'
QSysClasses.GuidA = '53b3cf03-8f5a-4788-91b6-d19ed9fcccbf'
Add(QSysClasses)    

QSysClasses.NameA = 'SoftwareComponent'
QSysClasses.ClassNameA = 'SoftwareComponent'
QSysClasses.GuidA = '5c4c3332-344d-483c-8739-259e934c9cc8'
Add(QSysClasses)    

QSysClasses.NameA = 'UCM'
QSysClasses.ClassNameA = 'UCM'
QSysClasses.GuidA = 'e6f1aa1c-7f3b-4473-b2e8-c97d8ac71d53'
Add(QSysClasses)    

QSysClasses.NameA = 'USB'
QSysClasses.ClassNameA = 'USB'
QSysClasses.GuidA = '36fc9e60-c465-11cf-8056-444553540000'
Add(QSysClasses)    
   


QSysClasses.FSFilter = 1

QSysClasses.NameA = 'FSFilterTop'
QSysClasses.ClassNameA = 'FSFilterTop'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

QSysClasses.NameA = 'FSFilterActiveMonitor'
QSysClasses.ClassNameA = 'FSFilterActiveMonitor'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterUndelete'
QSysClasses.ClassNameA = 'FSFilterUndelete'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterAntivirus'
QSysClasses.ClassNameA = 'FSFilterAntivirus'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterReplication'
QSysClasses.ClassNameA = 'FSFilterReplication'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterContinuousBackup'
QSysClasses.ClassNameA = 'FSFilterContinuousBackup'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterContentScreener'
QSysClasses.ClassNameA = 'FSFilterContentScreener'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterQuotaManagement'
QSysClasses.ClassNameA = 'FSFilterQuotaManagement'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterSystemRecovery'
QSysClasses.ClassNameA = 'FSFilterSystemRecovery'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterCFSMetaDataServer'
QSysClasses.ClassNameA = 'FSFilterCFSMetaDataServer'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterHSM'
QSysClasses.ClassNameA = 'FSFilterHSM'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterCompression'
QSysClasses.ClassNameA = 'FSFilterCompression'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterEncryption'
QSysClasses.ClassNameA = 'FSFilterEncryption'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterVirtualization'
QSysClasses.ClassNameA = 'FSFilterVirtualization'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterPhysicalQuotaManagement'
QSysClasses.ClassNameA = 'FSFilterPhysicalQuotaManagement'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 QSysClasses.NameA = 'FSFilterOpenFileBackup'
QSysClasses.ClassNameA = 'FSFilterOpenFileBackup'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

QSysClasses.NameA = 'FSFilterSecurityEnhancer'
QSysClasses.ClassNameA = 'FSFilterSecurityEnhancer'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

QSysClasses.NameA = 'FSFilterCopyProtection'
QSysClasses.ClassNameA = 'FSFilterCopyProtection'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

QSysClasses.NameA = 'FSFilterBottom'
QSysClasses.ClassNameA = 'FSFilterBottom'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

QSysClasses.NameA = 'FSFilterSystem'
QSysClasses.ClassNameA = 'FSFilterSystem'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

QSysClasses.NameA = 'FSFilterInfrastructure'
QSysClasses.ClassNameA = 'FSFilterInfrastructure'
QSysClasses.GuidA = 'b369baf4-5568-4e82-a87e-a93eb16bca87'
Add(QSysClasses)    

 
    





Sort(QSysClasses,+QSysClasses.GuidA)

G# = 0
Loop Records(QSysClasses) TIMES
    G# = G# + 1
    Get(QSysClasses,G#)
    QSysClasses.Id = G#
    
    QSysClasses.GuidA = Lower(QSysClasses.GuidA)

    ANSI_STRING_INPUT = QSysClasses.NameA
    Do AnsiToUTF16
    QSysClasses.Name = UTF16_OUTPUT
    QSysClasses.NameLen = UTF16_OUTPUT_LEN
    
    ANSI_STRING_INPUT = QSysClasses.DescriptionA
    Do AnsiToUTF16
    QSysClasses.Description = UTF16_OUTPUT
    QSysClasses.DescriptionLen = UTF16_OUTPUT_LEN        
            
    QSysClasses.GuidA = UPPER(QSysClasses.GuidA)
    GUID_INPUT = QSysClasses.GuidA
    ANSI_STRING_INPUT = GUID_INPUT
    Do AnsiToUTF16 
    QSysClasses.Guid = UTF16_OUTPUT
    !QSysClasses.GuidLen = UTF16_OUTPUT_LEN

    ANSI_STRING_INPUT = QSysClasses.ClassNameA
    Do AnsiToUTF16
    QSysClasses.ClassName = UTF16_OUTPUT
    QSysClasses.ClassNameLen = UTF16_OUTPUT_LEN          
    
    If Len(Clip(GUID_INPUT)) = 16
!        GUID_OUTPUT_STR36 = st.ba .ByteToHex(Val(GUID_INPUT[4])) & st.ByteToHex(Val(GUID_INPUT[3])) & st.ByteToHex(Val(GUID_INPUT[2])) & st.ByteToHex(Val(GUID_INPUT[1])) & '-' & |
!             st.ByteToHex(Val(GUID_INPUT[6])) & |
!             st.ByteToHex(Val(GUID_INPUT[5])) & '-' & |
!             st.ByteToHex(Val(GUID_INPUT[8])) & |
!             st.ByteToHex(Val(GUID_INPUT[7])) & '-' & |
!             st.ByteToHex(Val(GUID_INPUT[9])) & |
!             st.ByteToHex(Val(GUID_INPUT[10])) & '-' & |
!             st.ByteToHex(Val(GUID_INPUT[11])) & |
!             st.ByteToHex(Val(GUID_INPUT[12])) & |
!             st.ByteToHex(Val(GUID_INPUT[13])) & |
!             st.ByteToHex(Val(GUID_INPUT[14])) & |
!             st.ByteToHex(Val(GUID_INPUT[15])) & |
!            st.ByteToHex(Val(GUID_INPUT[16]))               
!        GUID_OUTPUT_STR36 = UPPER(GUID_OUTPUT_STR36)
    END        
    
    !QSysClasses.DescriptionA = ''
    Put(QSysClasses)
    !Buffer64K = Clip(Buffer64K) & Chr(13) & Chr(10) & 'GUID_SETUP_SYSCLASS_' & Clip(QSysClasses.ClassNameA) & '  EQUATE(''' & Upper(Clip(QSysClasses.GuidA)) & '''' & ') ! ' & Clip(QSysClasses.NameA)
End
!SETCLIPBOARD(Clip(Buffer64K))
1 Like

Hi Menno,
I am very interesed on this function for acces to devices on windows.
Please if you could share the prototype for the function SetupDiGetClassDevsW for me will be very usefull, i have one project in the garage for connect and take a picture with a Honeywell Xenon 1900 Device since 1 year, and your post put light on my way.
Thanks!!!
Luis

1 Like

Hi Luis,

Yes, I will make a small app which works and so you have the data structures, prototypes etc.

Not sure it will then be appropriate for your specific project

Thank you Menno for your work on this. I’m watching this thread closely as well.

1 Like

Thanks so much Don, i will send a stripped working Prj from my entire software app towards this particular functionality in a private message for those who have interests. Next week orso I hope. I let you know.
Thanks for your thanks :slight_smile: