• Welcome to Jose's Read Only Forum 2023.
 

equates with different values v3 hdrs

Started by Paul Elliott, March 23, 2012, 11:16:33 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Paul Elliott

José,

This may be something I'm doing wrong or maybe should not be doing at all.

I've got a program that runs thru all the INC files ( either your v3 or PB's latest ) and
captures various bits of information. 1 of the bits is all the Equates/Enum Singulars. I use them to
figure out which parts of  #IF...#ENDIF blocks should be looked at. But have ran into several
that change values ( which should not happen and doesn't seem to in real programs ).

One of the simplest that I've found so far is below. In the file MSCORLIB.inc they get 1 value
but in SCRRUN.inc they get different values.

Can you explain to me why they are different?  Or am I doing something VERY wrong?

Thanks for your help.  No big hurry as I'm just going to modify my program to ignore any
new equate value after it first gets set.



MSCORLIB.inc

' ========================================================================================
' DriveType enum
' IID: {72E8197D-904B-3371-AE0E-B70D9D53771C}
' ========================================================================================

%DriveType_Unknown                                      = &H0          ' 0
%DriveType_NoRootDirectory                              = &H1          ' 1
%DriveType_Removable                                    = &H2          ' 2
%DriveType_Fixed                                        = &H3          ' 3
%DriveType_Network                                      = &H4          ' 4
%DriveType_CDRom                                        = &H5          ' 5
%DriveType_Ram                                          = &H6          ' 6




SCRRUN.inc

' ========================================================================================
' DriveTypeConst enum
' ========================================================================================

%DriveType_UnknownType                                  = 0
%DriveType_Removable                                    = 1
%DriveType_Fixed                                        = 2
%DriveType_Remote                                       = 3
%DriveType_CDRom                                        = 4
%DriveType_RamDisk                                      = 5

José Roca

Coincidence. Change the ones in scrrun.inc to:


%DriveTypeConst_UnknownType                             = 0
%DriveTypeConst_Removable                               = 1
%DriveTypeConst_Fixed                                   = 2
%DriveTypeConst_Remote                                  = 3
%DriveTypeConst_CDRom                                   = 4
%DriveTypeConst_RamDisk                                 = 5


Paul Elliott

Thanks. 

I'll keep checking on the others. The list is currently a little over 900 differences.
I feel some might be due to PB defining Win32_WinNT as &H0601 all the time ( unless
%Chicago is also defined ). I noticed that you worked around it for %WM_MouseLast.


Paul Elliott

José,

I'm doing this just to see where my program needs correcting.
In real programs, there is a great possiblity that the combination of INC files that creates these
mismaches would not be used together.

I've got another bunch of mismatches. I'm not going to worry about the string equates.

Several can be eliminated by not using DX7VB.inc or DX8VB.inc  and just using D3D9CAPS.inc.
Doing this cuts the number of differences in half.

I'm going to take a break for a while. As I said, no hurry. It is the weekend.




%eALL

MMDeviceAPI.inc

' EDataFlow enum
%eRender              = 0
%eCapture             = %eRender  + 1
%eAll                 = %eCapture + 1
%EDataFlow_enum_count = %eAll     + 1


MSCoree.inc
                         
' enum EApiCategories
%eNoChecks                 = 0
%eSynchronization          = &H1
%eSharedState              = &H2
%eExternalProcessMgmt      = &H4
%eSelfAffectingProcessMgmt = &H8
%eExternalThreading        = &H10
%eSelfAffectingThreading   = &H20
%eSecurityInfrastructure   = &H40
%eUI                       = &H80
%eMayLeakOnAbort           = &H100
%eAll                      = &H1ff

==================================

%LVN_GetDispInfoW

PB defined as -176

CommCtrl.inc                     

'//====== WM_NOTIFY codes (NMHDR.code values) ==================================

'%NM_FIRST = 0            ' generic to all controls
'%NM_LAST  = -99&

%LVN_FIRST               = 0-100       ' listview
%LVN_LAST                = 0-199

' // LVN_GETDISPINFOA and LVN_GETDISPINFOW are predefined in the compiler, but
' // LVN_GETDISPINFOA is called LVN_GETDISPINFO, so we need to redefine it.
%LVN_GETDISPINFOA    = %LVN_FIRST - 50
%LVN_GETDISPINFOW    = %LVN_FIRST - 77
#IF %DEF(%UNICODE)
%LVN_GETDISPINFO = %LVN_GETDISPINFOW
#ELSE
%LVN_GETDISPINFO = %LVN_GETDISPINFOA
#ENDIF
     
==================================

cdoInvalidTimeZone    * differences already noted

Cdoex.inc     

%cdoTaipei            = 75
%cdoSydney2000        = 76
%cdoInvalidTimeZone   = 77
' Note: cdoInvalidTimeZone is defined as 82 in the Windows Server 2008 SDK version of cdosys.h

Cdosys.inc

%cdoTaipei                        = 75
%cdoSydney2000                    = 76
%cdoChihuahua                     = 77
%cdoCanberraCommonwealthGames2006 = 78
%cdoAdelaideCommonwealthGames2006 = 79
%cdoHobartCommonwealthGames2006   = 80
%cdoTijuana                       = 81
%cdoInvalidTimeZone               = 82
' Note: cdoInvalidTimeZone was defined as 78 in SDKs prior to Windows Server 2008 in
' cdosys.h and as 77 in cdoex.h

==================================

d3ddevcaps_hwtransformandlight  * different versions of DX? need different values
                                  only include D3D9Caps.inc unless older version support needed

D3D9Caps.inc

'//
'// DevCaps
'//
%D3DDEVCAPS_EXECUTESYSTEMMEMORY     = &H00000010???   ' /* Device can use execute buffers from system memory */
%D3DDEVCAPS_EXECUTEVIDEOMEMORY      = &H00000020???   ' /* Device can use execute buffers from video memory */
%D3DDEVCAPS_TLVERTEXSYSTEMMEMORY    = &H00000040???   ' /* Device can use TL buffers from system memory */
%D3DDEVCAPS_TLVERTEXVIDEOMEMORY     = &H00000080???   ' /* Device can use TL buffers from video memory */
%D3DDEVCAPS_TEXTURESYSTEMMEMORY     = &H00000100???   ' /* Device can texture from system memory */
%D3DDEVCAPS_TEXTUREVIDEOMEMORY      = &H00000200???   ' /* Device can texture from device memory */
%D3DDEVCAPS_DRAWPRIMTLVERTEX        = &H00000400???   ' /* Device can draw TLVERTEX primitives */
%D3DDEVCAPS_CANRENDERAFTERFLIP      = &H00000800???   ' /* Device can render without waiting for flip to complete */
%D3DDEVCAPS_TEXTURENONLOCALVIDMEM   = &H00001000???   ' /* Device can texture from nonlocal video memory */
%D3DDEVCAPS_DRAWPRIMITIVES2         = &H00002000???   ' /* Device can support DrawPrimitives2 */
%D3DDEVCAPS_SEPARATETEXTUREMEMORIES = &H00004000???   ' /* Device is texturing from separate memory pools */
%D3DDEVCAPS_DRAWPRIMITIVES2EX       = &H00008000???   ' /* Device can support Extended DrawPrimitives2 i.e. DX7 compliant driver*/
%D3DDEVCAPS_HWTRANSFORMANDLIGHT     = &H00010000???   ' /* Device can support transformation and lighting in hardware and DRAWPRIMITIVES2EX must be also */
%D3DDEVCAPS_CANBLTSYSTONONLOCAL     = &H00020000???   ' /* Device supports a Tex Blt from system memory to non-local vidmem */
%D3DDEVCAPS_HWRASTERIZATION         = &H00080000???   ' /* Device has HW acceleration for rasterization */
%D3DDEVCAPS_PUREDEVICE              = &H00100000???   ' /* Device supports D3DCREATE_PUREDEVICE */
%D3DDEVCAPS_QUINTICRTPATCHES        = &H00200000???   ' /* Device supports quintic Beziers and BSplines */
%D3DDEVCAPS_RTPATCHES               = &H00400000???   ' /* Device supports Rect and Tri patches */
%D3DDEVCAPS_RTPATCHHANDLEZERO       = &H00800000???   ' /* Indicates that RT Patches may be drawn efficiently using handle 0 */
%D3DDEVCAPS_NPATCHES                = &H01000000???   ' /* Device supports N-Patches */

DX7VB.inc

' ========================================================================================
' CONST_D3DDEVICEDESCCAPS enum
' ========================================================================================

%D3DDEVCAPS_FLOATTLVERTEX                               = 1            ' &H1
%D3DDEVCAPS_SORTINCREASINGZ                             = 2            ' &H2
%D3DDEVCAPS_SORTDECREASINGZ                             = 4            ' &H4
%D3DDEVCAPS_SORTEXACT                                   = 8            ' &H8
%D3DDEVCAPS_TLVERTEXSYSTEMMEMORY                        = 64           ' &H40
%D3DDEVCAPS_TLVERTEXVIDEOMEMORY                         = 128          ' &H80
%D3DDEVCAPS_TEXTURESYSTEMMEMORY                         = 256          ' &H100
%D3DDEVCAPS_TEXTUREVIDEOMEMORY                          = 512          ' &H200
%D3DDEVCAPS_DRAWPRIMTLVERTEX                            = 1024         ' &H400
%D3DDEVCAPS_CANRENDERAFTERFLIP                          = 2048         ' &H800
%D3DDEVCAPS_TEXTURENONLOCALVIDMEM                       = 4096         ' &H1000
%D3DDEVCAPS_SEPARATETEXTUREMEMORIES                     = 16384        ' &H4000
%D3DDEVCAPS_HWTRANSFORMANDLIGHT                         = 32768        ' &H8000
%D3DDEVCAPS_CANBLTSYSTONONLOCAL                         = 131072       ' &H20000
%D3DDEVCAPS_HWRASTERIZATION                             = 524288       ' &H80000


DX8VB.inc

' ========================================================================================
' CONST_D3DDEVCAPSFLAGS enum
' ========================================================================================

%D3DDEVCAPS_EXECUTESYSTEMMEMORY                         = 16           ' &H10
%D3DDEVCAPS_EXECUTEVIDEOMEMORY                          = 32           ' &H20
%D3DDEVCAPS_TLVERTEXSYSTEMMEMORY                        = 64           ' &H40
%D3DDEVCAPS_TLVERTEXVIDEOMEMORY                         = 128          ' &H80
%D3DDEVCAPS_TEXTURESYSTEMMEMORY                         = 256          ' &H100
%D3DDEVCAPS_TEXTUREVIDEOMEMORY                          = 512          ' &H200
%D3DDEVCAPS_DRAWPRIMTLVERTEX                            = 1024         ' &H400
%D3DDEVCAPS_CANRENDERAFTERFLIP                          = 2048         ' &H800
%D3DDEVCAPS_TEXTURENONLOCALVIDMEM                       = 4096         ' &H1000
%D3DDEVCAPS_DRAWPRIMITIVES2                             = 8192         ' &H2000
%D3DDEVCAPS_SEPARATETEXTUREMEMORIES                     = 16384        ' &H4000
%D3DDEVCAPS_DRAWPRIMITIVES2EX                           = 32768        ' &H8000
%D3DDEVCAPS_HWTRANSFORMANDLIGHT                         = 65536        ' &H10000
%D3DDEVCAPS_CANBLTSYSTONONLOCAL                         = 131072       ' &H20000
%D3DDEVCAPS_HWRASTERIZATION                             = 524288       ' &H80000
%D3DDEVCAPS_PUREDEVICE                                  = 1048576      ' &H100000
%D3DDEVCAPS_QUINTICRTPATCHES                            = 2097152      ' &H200000
%D3DDEVCAPS_RTPATCHES                                   = 4194304      ' &H400000
%D3DDEVCAPS_RTPATCHHANDLEZERO                           = 8388608      ' &H800000
%D3DDEVCAPS_NPATCHES                                    = 16777216     ' &H1000000
                                   
==================================


%dispid_text
%dispid_enabled
%dispid_maxlength
%dispid_multiline
%dispid_scrollbars
%dispid_refresh

OAIDL.inc -- source of %DISPID_VALUE

' ########################################################################################
' IDispatch interface
' IID = 00020400-0000-0000-C000-000000000046
' Inherited interface = IUnknown
' NOTE: Renamed because of conflicts with the built-in PB definition.
' ########################################################################################

#IF NOT %DEF(%IDispatch_INTERFACE_DEFINED)
    %IDispatch_INTERFACE_DEFINED = 1

$IID_IDispatch = GUID$("{00020400-0000-0000-C000-000000000046}")

'/* DISPID reserved to indicate an "unknown" name */
'/* only reserved for data members (properties); reused as a method dispid below */
%DISPID_UNKNOWN                           = -1

'/* DISPID reserved for the "value" property */
%DISPID_VALUE                             = 0

                                                           
INKED.inc
                                                           
' ========================================================================================
' DISPID_InkEdit enum
' ========================================================================================

%DISPID_Text               = %DISPID_VALUE
%DISPID_TextRTF            = %DISPID_Text               + 1
%DISPID_Hwnd               = %DISPID_TextRTF            + 1
%DISPID_DisableNoScroll    = %DISPID_Hwnd               + 1
%DISPID_Locked             = %DISPID_DisableNoScroll    + 1
%DISPID_Enabled            = %DISPID_Locked             + 1
%DISPID_MaxLength          = %DISPID_Enabled            + 1
%DISPID_MultiLine          = %DISPID_MaxLength          + 1
%DISPID_ScrollBars         = %DISPID_MultiLine          + 1
%DISPID_RTSelStart         = %DISPID_ScrollBars         + 1
%DISPID_RTSelLength        = %DISPID_RTSelStart         + 1
%DISPID_RTSelText          = %DISPID_RTSelLength        + 1
%DISPID_SelAlignment       = %DISPID_RTSelText          + 1
%DISPID_SelBold            = %DISPID_SelAlignment       + 1
%DISPID_SelCharOffset      = %DISPID_SelBold            + 1
%DISPID_SelColor           = %DISPID_SelCharOffset      + 1
%DISPID_SelFontName        = %DISPID_SelColor           + 1
%DISPID_SelFontSize        = %DISPID_SelFontName        + 1
%DISPID_SelItalic          = %DISPID_SelFontSize        + 1
%DISPID_SelRTF             = %DISPID_SelItalic          + 1
%DISPID_SelUnderline       = %DISPID_SelRTF             + 1
%DISPID_DragIcon           = %DISPID_SelUnderline       + 1
%DISPID_Status             = %DISPID_DragIcon           + 1
%DISPID_UseMouseForInput   = %DISPID_Status             + 1
%DISPID_InkMode            = %DISPID_UseMouseForInput   + 1
%DISPID_InkInsertMode      = %DISPID_InkMode            + 1
%DISPID_RecoTimeout        = %DISPID_InkInsertMode      + 1
%DISPID_DrawAttr           = %DISPID_RecoTimeout        + 1
%DISPID_Recognizer         = %DISPID_DrawAttr           + 1
%DISPID_Factoid            = %DISPID_Recognizer         + 1
%DISPID_SelInk             = %DISPID_Factoid            + 1
%DISPID_SelInksDisplayMode = %DISPID_SelInk             + 1
%DISPID_Recognize          = %DISPID_SelInksDisplayMode + 1
%DISPID_GetGestStatus      = %DISPID_Recognize          + 1
%DISPID_SetGestStatus      = %DISPID_GetGestStatus      + 1
%DISPID_Refresh            = %DISPID_SetGestStatus      + 1


OLECTL.inc

'/////////////////////////////////////////////////////////////////////////////
'//  Standard dispatch ID constants

%DISPID_AUTOSIZE                          = -500
%DISPID_BACKCOLOR                         = -501
%DISPID_BACKSTYLE                         = -502
%DISPID_BORDERCOLOR                       = -503
%DISPID_BORDERSTYLE                       = -504
%DISPID_BORDERWIDTH                       = -505
%DISPID_DRAWMODE                          = -507
%DISPID_DRAWSTYLE                         = -508
%DISPID_DRAWWIDTH                         = -509
%DISPID_FILLCOLOR                         = -510
%DISPID_FILLSTYLE                         = -511
%DISPID_FONT                              = -512
%DISPID_FORECOLOR                         = -513
%DISPID_ENABLED                           = -514
%DISPID_HWND                              = -515
%DISPID_TABSTOP                           = -516
%DISPID_TEXT                              = -517
%DISPID_CAPTION                           = -518
%DISPID_BORDERVISIBLE                     = -519
%DISPID_APPEARANCE                        = -520
%DISPID_MOUSEPOINTER                      = -521
%DISPID_MOUSEICON                         = -522
%DISPID_PICTURE                           = -523
%DISPID_VALID                             = -524
%DISPID_READYSTATE                        = -525
%DISPID_LISTINDEX                         = -526
%DISPID_SELECTED                          = -527
%DISPID_LIST                              = -528
%DISPID_COLUMN                            = -529
%DISPID_LISTCOUNT                         = -531
%DISPID_MULTISELECT                       = -532
%DISPID_MAXLENGTH                         = -533
%DISPID_PASSWORDCHAR                      = -534
%DISPID_SCROLLBARS                        = -535
%DISPID_WORDWRAP                          = -536
%DISPID_MULTILINE                         = -537
%DISPID_NUMBEROFROWS                      = -538
%DISPID_NUMBEROFCOLUMNS                   = -539
%DISPID_DISPLAYSTYLE                      = -540
%DISPID_GROUPNAME                         = -541
%DISPID_IMEMODE                           = -542
%DISPID_ACCELERATOR                       = -543
%DISPID_ENTERKEYBEHAVIOR                  = -544
%DISPID_TABKEYBEHAVIOR                    = -545
%DISPID_SELTEXT                           = -546
%DISPID_SELSTART                          = -547
%DISPID_SELLENGTH                         = -548

%DISPID_REFRESH                           = -550
%DISPID_DOCLICK                           = -551
%DISPID_ABOUTBOX                          = -552
%DISPID_ADDITEM                           = -553
%DISPID_CLEAR                             = -554
%DISPID_REMOVEITEM                        = -555
                                               
==================================
                                               
%msmsg_class_nack_bad_dst_q
  thru
%mqmsg_class_nack_receive_timeout_at_sender 

MQ.inc    -- ?? is forcing to word value ( unsigned )

'//-----------------------------------------------
'//
'//  Negative arrival acknowledgments
'//

'//
'//  Destination queue cannot be reached, the queue may have been deleted
'//
'#define MQMSG_CLASS_NACK_BAD_DST_Q              MQCLASS_CODE(1, 0, 0x00)
%MQMSG_CLASS_NACK_BAD_DST_Q = &H8000??

'//
'//  The message was purged before reaching its destination queue
'//
'#define MQMSG_CLASS_NACK_PURGED                 MQCLASS_CODE(1, 0, 0x01)
%MQMSG_CLASS_NACK_PURGED = &H8001??

'//
'//  Time to reach queue has expired
'//
'#define MQMSG_CLASS_NACK_REACH_QUEUE_TIMEOUT    MQCLASS_CODE(1, 0, 0x02)
%MQMSG_CLASS_NACK_REACH_QUEUE_TIMEOUT = &H8002??

'//
'//  The message has exceeded the queue quota
'//
'#define MQMSG_CLASS_NACK_Q_EXCEED_QUOTA         MQCLASS_CODE(1, 0, 0x03)
%MQMSG_CLASS_NACK_Q_EXCEED_QUOTA = &H8003??

'//
'//  The sender does not have send access rights to the queue.
'//
'#define MQMSG_CLASS_NACK_ACCESS_DENIED          MQCLASS_CODE(1, 0, 0x04)
%MQMSG_CLASS_NACK_ACCESS_DENIED = &H8004??

'//
'//  The message hop count was exceeded
'//
'#define MQMSG_CLASS_NACK_HOP_COUNT_EXCEEDED     MQCLASS_CODE(1, 0, 0x05)
%MQMSG_CLASS_NACK_HOP_COUNT_EXCEEDED = &H8005??

'//
'//  The message signature is bad. The message could not be authenticated.
'//
'#define MQMSG_CLASS_NACK_BAD_SIGNATURE          MQCLASS_CODE(1, 0, 0x06)
%MQMSG_CLASS_NACK_BAD_SIGNATURE = &H8006??

'//
'//  The message could not be decrypted.
'//
'#define MQMSG_CLASS_NACK_BAD_ENCRYPTION         MQCLASS_CODE(1, 0, 0x07)
%MQMSG_CLASS_NACK_BAD_ENCRYPTION = &H8007??

'//
'//  The message could not be encrypted for the destination.
'//
'#define MQMSG_CLASS_NACK_COULD_NOT_ENCRYPT      MQCLASS_CODE(1, 0, 0x08)
%MQMSG_CLASS_NACK_COULD_NOT_ENCRYPT = &H8008??

'//
'//  The message was sent to a non-transactional queue within a transaction.
'//
'#define MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_Q    MQCLASS_CODE(1, 0, 0x09)
%MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_Q = &H8009??

'//
'//  The message was sent to a transactional queue not within a transaction.
'//
'#define MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_MSG  MQCLASS_CODE(1, 0, 0x0A)
%MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_MSG = &H800A??

'//
'//  The requested crypto provider for encryption is not supported by the destination.
'//
'#define MQMSG_CLASS_NACK_UNSUPPORTED_CRYPTO_PROVIDER  MQCLASS_CODE(1, 0, 0x0B)
%MQMSG_CLASS_NACK_UNSUPPORTED_CRYPTO_PROVIDER = &H800B??

'//
'// The QM GUID has changed and therefore the messages was thrown away.
'//
'#define MQMSG_CLASS_NACK_SOURCE_COMPUTER_GUID_CHANGED MQCLASS_CODE(1, 0, 0x0C)
%MQMSG_CLASS_NACK_SOURCE_COMPUTER_GUID_CHANGED = &H800C??

'//
'// The message was sent by downlevel machines (earlier than msmq4) and the message size
'// with the subqueue and IPV6 headers exceeded the max message size
'//
'#define MQMSG_CLASS_NACK_MESSAGE_TOO_LARGE MQCLASS_CODE(1, 0, 0x0D)
%MQMSG_CLASS_NACK_MESSAGE_TOO_LARGE = &H800D??

'//-----------------------------------------------
'//
'//  Negative receive acknowledgments
'//

'//
'//  The queue was deleted, after the message arrived
'//
'#define MQMSG_CLASS_NACK_Q_DELETED              MQCLASS_CODE(1, 1, 0x00)
%MQMSG_CLASS_NACK_Q_DELETED = &HC000??

'//
'//  The message was purged at the destination queue
'//
'#define MQMSG_CLASS_NACK_Q_PURGED               MQCLASS_CODE(1, 1, 0x01)
%MQMSG_CLASS_NACK_Q_PURGED = &HC001??

'//
'//  Time to receive has expired while the message was still in its destination queue
'//  (generated by destination)
'//
'#define MQMSG_CLASS_NACK_RECEIVE_TIMEOUT        MQCLASS_CODE(1, 1, 0x02)
%MQMSG_CLASS_NACK_RECEIVE_TIMEOUT = &HC002??

'//
'//  Time to receive has expired while the message was still in its local outgoing queue
'//  (generated locally by sender)
'//
'#define MQMSG_CLASS_NACK_RECEIVE_TIMEOUT_AT_SENDER  MQCLASS_CODE(1, 1, 0x03)
%MQMSG_CLASS_NACK_RECEIVE_TIMEOUT_AT_SENDER = &HC003??


MQOAI.inc  - no type identifier so becomes signed Long

' ========================================================================================
' MQMSGCLASS enum
' ========================================================================================

%MQMSG_CLASS_NORMAL                            = 0      + 0      + 0
%MQMSG_CLASS_REPORT                            = 0      + 0      + &H1
%MQMSG_CLASS_ACK_REACH_QUEUE                   = 0      + 0      + &H2
%MQMSG_CLASS_ACK_RECEIVE                       = 0      + &H4000 + 0
%MQMSG_CLASS_NACK_BAD_DST_Q                    = &H8000 + 0      + 0
%MQMSG_CLASS_NACK_PURGED                       = &H8000 + 0      + &H1
%MQMSG_CLASS_NACK_REACH_QUEUE_TIMEOUT          = &H8000 + 0      + &H2
%MQMSG_CLASS_NACK_Q_EXCEED_QUOTA               = &H8000 + 0      + &H3
%MQMSG_CLASS_NACK_ACCESS_DENIED                = &H8000 + 0      + &H4
%MQMSG_CLASS_NACK_HOP_COUNT_EXCEEDED           = &H8000 + 0      + &H5
%MQMSG_CLASS_NACK_BAD_SIGNATURE                = &H8000 + 0      + &H6
%MQMSG_CLASS_NACK_BAD_ENCRYPTION               = &H8000 + 0      + &H7
%MQMSG_CLASS_NACK_COULD_NOT_ENCRYPT            = &H8000 + 0      + &H8
%MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_Q          = &H8000 + 0      + &H9
%MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_MSG        = &H8000 + 0      + &Ha
%MQMSG_CLASS_NACK_UNSUPPORTED_CRYPTO_PROVIDER  = &H8000 + 0      + &Hb
%MQMSG_CLASS_NACK_SOURCE_COMPUTER_GUID_CHANGED = &H8000 + 0      + &Hc
%MQMSG_CLASS_NACK_Q_DELETED                    = &H8000 + &H4000 + 0
%MQMSG_CLASS_NACK_Q_PURGED                     = &H8000 + &H4000 + &H1
%MQMSG_CLASS_NACK_RECEIVE_TIMEOUT              = &H8000 + &H4000 + &H2
%MQMSG_CLASS_NACK_RECEIVE_TIMEOUT_AT_SENDER    = &H8000 + &H4000 + &H3   
                                             
==================================

%mq_max_msg_label_len

MQ.inc

'//
'// LONG_LIVED is the default for PROPID_M_TIME_TO_REACH_QUEUE. If calls
'// to MQSendMessage() specify this value, or not specify this property at
'// all, then the actual timeout is obtained from Active Directory.
'//
%LONG_LIVED = &Hfffffffe???

%MQ_MAX_Q_NAME_LEN     = 124   '// Maximal WCHAR length of a queue name.
%MQ_MAX_Q_LABEL_LEN    = 124
%MQ_MAX_MSG_LABEL_LEN  = 250
         
         
MQOAI.inc

' ========================================================================================
' MQMSGMAX enum
' ========================================================================================

%MQ_MAX_MSG_LABEL_LEN = 249
                                             


José Roca

Thanks very much. DX7VB.inc or DX8VB.inc are of no use today. They were includes for two OCXs made by Microsoft to allow VBers to use DirectX 7 and DirectX 8.

José Roca

Quote
%LVN_GetDispInfoW

PB defined as -176

The correct value is -177. I have notified it to Mr. Zale to change it.

José Roca

Quote
cdoInvalidTimeZone    * differences already noted

Cdoex.inc     

%cdoTaipei            = 75
%cdoSydney2000        = 76
%cdoInvalidTimeZone   = 77
' Note: cdoInvalidTimeZone is defined as 82 in the Windows Server 2008 SDK version of cdosys.h

Cdosys.inc

%cdoTaipei                        = 75
%cdoSydney2000                    = 76
%cdoChihuahua                     = 77
%cdoCanberraCommonwealthGames2006 = 78
%cdoAdelaideCommonwealthGames2006 = 79
%cdoHobartCommonwealthGames2006   = 80
%cdoTijuana                         = 81
%cdoInvalidTimeZone               = 82
' Note: cdoInvalidTimeZone was defined as 78 in SDKs prior to Windows Server 2008 in
' cdosys.h and as 77 in cdoex.h

I have made them mutually exclusive:


' Use %CDO_INC as constant to exclude other CDO includes such cdoex.inc
#IF NOT %DEF(%CDO_INC)
    %CDO_INC = 1
....
....
#ENDIF   ' #IF NOT %DEF(%CDO_INC)


I already did it in the first version of the includes, but when #INCLUDE THIS ONCE was implemented I removed it inadvertently.

José Roca


José Roca

Quote
MQ.inc    -- ?? is forcing to word value ( unsigned )

Yes. The C++ header uses this macro

#define MQCLASS_CODE(s, r, code) ((USHORT)(((s) << 15) | ((r) << 14) | (code)))

that casts the result to USHORT.

José Roca

#9
Quote
MQOAI.inc  - no type identifier so becomes signed Long
%mq_max_msg_label_len

I have added a note to MQOAI.INC saying that can't be used together with MQ.INC.

MQOAI is a wrapper OCX for VB6 and uses integer values because VB6 has no WORDs.

%mq_max_msg_label_len is defined as 250 in MQ.INC because being an header for C++, it has to make room for the terminating null.

Paul Elliott

José,

Just a last few for you ( and a bunch I need to figure out why they are different ).

I've got a few for PB but I'll send them to PB Support next week.

Thanks for your help.





%dispid_xobj_min
%dispid_xobj_max

MSHTMDID.inc   

%DISPID_XOBJ_MIN                 = &H80010000&
%DISPID_XOBJ_MAX                 = &H8001FFFF&


MSXML2DID.inc                                 

%DISPID_XOBJ_MIN                 = &H00010000
%DISPID_XOBJ_MAX                 = &H0001FFFF

==================================

%dispid_documentcomplete

DHTMLDID.inc

'// events
%DISPID_DOCUMENTCOMPLETE         = 1


EXDISPID

%DISPID_ONFULLSCREEN               = 258   ' // sent when kiosk mode should be on/off
%DISPID_DOCUMENTCOMPLETE           = 259   ' // new document goes ReadyState_Complete
%DISPID_ONTHEATERMODE              = 260   ' // sent when theater mode should be on/off

==================================
                                           
thse might be another time I should not have both INC files.
                                           
%DISPID_DOM_DOCUMENT orig 65 new 37
%DISPID_DOM_NODELIST orig 385 new 100
%DISPID_DOM_NAMEDNODEMAP orig 417 new 393
%DISPID_DOM_W3CWRAPPERS orig 33 new 430
%DISPID_DOM_DOCUMENTFRAGMENT orig 33 new 34
%DISPID_DOM_ELEMENT orig 97 new 35
%DISPID_DOM_DATA orig 129 new 109
%DISPID_DOM_DATA_LENGTH orig 130 new 131
%DISPID_DOM_DATA_SUBSTRING orig 131 new 132
%DISPID_DOM_DATA_APPEND orig 132 new 133
%DISPID_DOM_DATA_INSERT orig 133 new 134
%DISPID_DOM_DATA_DELETE orig 134 new 135
%DISPID_DOM_DATA_REPLACE orig 135 new 136
%DISPID_DOM_ATTRIBUTE orig 161 new 138
%DISPID_DOM_TEXT orig 193 new 166
%DISPID_DOM_PI orig 225 new 197
%DISPID_DOM_DOCUMENTTYPE orig 257 new 229
%DISPID_DOM_NOTATION orig 289 new 262
%DISPID_DOM_ENTITY orig 321 new 293
%DISPID_DOM_W3CWRAPPERS_TOP orig 353 new 325
%DISPID_DOM_IMPLEMENTATION orig 449 new 354

DOMDID.inc


MSXML2DID.inc

==================================

pb_exe  -- shouldn't this be #IF %DEF(PB_EXE)

OLECON.INC

   szClassName        = $OC_CLASSNAME
   wcex.cbSize        = SIZEOF(wcex)
#IF %PB_EXE = 1
   wcex.style         = 0
#ELSE
   wcex.style         = %CS_GLOBALCLASS                ' // For use with DLLs
#ENDIF   

==================================

%ED_DEVCAP_CAN_RECORD -- seems to be my problem  4097 vs 4106
                         got a whole bunch of these
                                                     
EDEVDEFS.INC
                                                     
%ED_BASE         = &H1000???                                                   
%ED_DEVCAP_CAN_RECORD        = %ED_BASE+1???


XPRTDEFS.INC

%ED_BASE         = &H1000&
%ED_DEVCAP_CAN_RECORD        = %ED_BASE+1&


José Roca

Quote
pb_exe  -- shouldn't this be #IF %DEF(PB_EXE)

No; because it is always defined.

From the help file:

Quote
%PB_EXE
Pre-defined as TRUE (non-zero) if compiling to EXE or as FALSE (zero) if compiling to DLL (PB/Win only) or SLL format.

The equate %PB_EXE is always defined in PowerBASIC, so %DEF(%PB_EXE) will always be evaluated as TRUE.  The difference being the value assigned to the equate by the compiler

EDEVDEFS.INC and XPRTDEFS.INC

Changed the ??? in EDEVDEFS.INC to &.


José Roca

#12
Quote
%dispid_xobj_min
%dispid_xobj_max

MSHTMDID.inc   

%DISPID_XOBJ_MIN                 = &H80010000&
%DISPID_XOBJ_MAX                 = &H8001FFFF&


MSXML2DID.inc                                 

%DISPID_XOBJ_MIN                 = &H00010000
%DISPID_XOBJ_MAX                 = &H0001FFFF

This is how they are defined in the C++ headers. Anyway, MSXML2DID.inc is not included by any other file. Looks like an internal file for developing Internet Explorer.

José Roca

DISPID_DOCUMENTCOMPLETE

Same as above. Anyway, you aren't likely to use them together, The EXDISPID.inc is the most important, since they are the dispatch idenifiers for IExplorer Dispatch Events. DHTMLDID.inc if for DHTMLEd.OCX, an active control no loger supported since Vista.

Paul Elliott

#14
José,

Got bad news about %PB_Exe.  In PB Win v10.03 it comes out as

%PB_EXE = 65535     0000FFFF

produced by following code

Print #1, "%PB_EXE = "; Format$(%PB_Exe); " "; Hex$(%PB_Exe, 8)   


This is in response to your Reply #11.