[ros-dev] win32k public headers

James Tabor jimtabor.rosdev at gmail.com
Thu Apr 3 03:38:07 CEST 2008


Hi!

2008/4/2 Timo Kreuzer <timo.kreuzer at web.de>:
>
>  Placing an undocumented and partly unknown structure inside two different
> headers will lead to problems, like the two different versions we have now
> ;-)
>
>
Sorry~

>  Well I'm not sure if I got you right, so I just try to make my thinking
> more clear:
>  There's compatible and there's compatible:
>  A) our sdk headers will contain 100% the same as ms sdk headers, not less,
> not more
>  B) our sdk headers will contain everything that is in ms sdk headers, but
> can contain more.
>  The ms sdk you can download is the public sdk. It's probably not what ms
> uses to compile their stuff. It's partly limited. ntgdi.h contains "typedef
> struct _POLYPATBLT  POLYPATBLT, * PPOLYPATBLT";

BTW the structure is this:
typedef struct _POLYPATBLT
{
  LONG nXLeft;
  LONG nYLeft;
  LONG nWidth;
  LONG nHeight;
  HBRUSH hBrush;
} POLYPATBLT, * PPOLYPATBLT;

I was going to change it with the next installment of GdiBatch.

>  But where's the real structure definition? Somewhere else? Does that make
> sense? Well it does when ms uses different headers that contain all the
> complete types, but then they don't even need this typedef.. So where do we
> put it?
>  I suggested the #ifdef's to have compatibility A when it's not defined and
> B when it's defined.
>  ntuser.h doesn't belong to the ms sdk. But for what reason? Do ms people
> really have ntuser stuff somewhere else? Probably not, they just decided not
> to ship it (I think they shipped ntuser.h with DDK some time ago)
I guess we can add those into the our SDK. I was ranting on how we
should be compatible.

>
>  Timo

Do what you think is right....
Thanks,
James


More information about the Ros-dev mailing list