Since I can't find the COM subforum I post this here.
I found a problem with the CY structure definition in Windows.inc 1.33. According to http://msdn2.microsoft.com/en-gb/library/ms221223(VS.80).aspx it should be


Code:
CY UNION
    STRUCT
        Lo dd ?
        Hi dd ?
    ENDS
    int64 dq ?
CY ENDS


The structure size should be 8 bytes and not 16 as it currently is.

Regards,

Biterider
Posted on 2006-11-22 08:21:52 by Biterider

Since I can't find the COM subforum I post this here.


I know COM is OOP orientied, but I put COM under Windows API in the API/ABI Support Forum because it is Microsoft/Windows specific and therefore its own "beast" altogether :)
Posted on 2006-11-22 09:22:47 by SpooK
Maybe you just had to look at windows.inc:

CY STRUCT ; <-- ouch
    struct
        Lo dd ?
        Hi dd ?
    ENDS
    int64 dq ?
CY ENDS

:)

But I'm not sure if it's just my version of windows.inc (I had to modify my copy of it, to have intellisense...).

If you make a CY2 union the way you posted, it compiles as 8-byte.
Posted on 2006-11-22 13:40:19 by Ultrano
I downloaded the latest version of Windows.inc to check how the structure is declared and it is wrong. The correct structure size is 8 bytes (= qword). Currently is compiles to 16 bytes what leads to multiple errors.

Regards,

Biterider
Posted on 2006-11-22 15:30:23 by Biterider
Nice catch  :thumbsup: :thumbsup:
Posted on 2006-11-23 00:14:47 by Homer