Hello again.
+typedef struct +{
- MOUSEHOOKSTRUCT MOUSEHOOKSTRUCT;
- DWORD mouseData;
+} MOUSEHOOKSTRUCTEX, *PMOUSEHOOKSTRUCTEX, *LPMOUSEHOOKSTRUCTEX;
Apparently that's not how Windows SDK defines it. For some obscure reason they didn't define EX struct simply as non-EX + extra field, but used cpp style, kind of. Older versions don't even have field name for MOUSEHOOKSTRUCT portion, only type, but this won't work, not with gcc at least. SDK 10 uses DUMMYSTRUCTNAME as a field name, which resolves to 's', if NONAMELESSSTRUCT is defined. I guess we have to follow version 10 definition.