issues compiling ReactOS newdev on wine

Mike McCormack mike at codeweavers.com
Tue Jan 3 02:22:31 CST 2006


Damjan Jovanovic wrote:

> Firstly, why can't winelibs include <windows.h> and
> <tchar.h>? Are TCHARs even usable in winelibs?

Because we need to explicitly say whether we're write a function that is 
ASCII or Unicode.  If you use TCHARs, you can define UNICODE, and 
compile your program as a unicode, or not define it, and compile as 
ASCII.  Wine needs to be both, so what should we define it to?

> Secondly, what the whole story with WCHARs? Why do
> L"Unicode string" type strings work in wine apps but
> not in winelibs?

Some compilers do not support L"string".  Older versions of gcc assume a 
wide character is 32 bytes, not 16.  For compatibility with those older 
compilers, we are restricted to using array initializers for WCHAR strings.

> And NEWDEV.DLL needs GWL_USERDATA, DWL_MSGRESULT and
> PSH_WIZARD97, all of which are within "#ifndef
> __WINESRC__" sections. Does wine assume DLLs never do
> user-interface stuff?

Try GWLP_USERDATA instead of GWL_USERDATA, and PSH_WIZARD97_(NEW/OLD) 
instead of PSH_WIZARD97.  Looks like Microsoft decided to change the 
value of PSH_WIZARD97, as Wine needs to know both values, there needs to 
be a way to distinguish between them.

Mike



More information about the wine-devel mailing list