Hi!
2008/4/2 Timo Kreuzer <timo.kreuzer(a)web.de>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