Hey Joris, I would be glad to write a howto for your and possibly others. I will get started on that soon.
On 25 Aug 2004 11:43:57 -0400, Vincent Béron <[EMAIL PROTECTED]> wrote: > Le mer 25/08/2004 à 11:27, Joris Huizer a écrit : > [snip] > > Hi James, > > > > Yeah I would like that, thanks for suggesting :) > > I'll try and do a search on unicode functions and stuff but -- well, you > > have seen more of wine specific details ... > > > > Also, I think it'd be smart to put something like that online (like.. > > linking from the janitorial page to that one?) > > By the way... Is there some kind of overview of what parts is already > > being worked on; we don't want to do double work right ;) > > Already done work is grayed-out or simply removed from the janitorial > page. > > Also take note (François? Any perl hacker?) that the method used to find > the cross-calls (winapi_check) is not 100% proof. There are some valid C > statements which contain a cross-call which are not found. Look at > dlls/lzexpand/lzexpand_main.c GetExpandedNameW: > > INT WINAPI GetExpandedNameW( LPWSTR in, LPWSTR out ) > { > INT ret; > DWORD len = WideCharToMultiByte( CP_ACP, 0, in, -1, NULL, 0, NULL, > NULL ); > char *xin = HeapAlloc( GetProcessHeap(), 0, len ); > char *xout = HeapAlloc( GetProcessHeap(), 0, len+3 ); > WideCharToMultiByte( CP_ACP, 0, in, -1, xin, len, NULL, NULL ); > if ((ret = GetExpandedNameA( xin, xout )) > 0) > MultiByteToWideChar( CP_ACP, 0, xout, -1, out, strlenW(in)+4 ); > HeapFree( GetProcessHeap(), 0, xin ); > HeapFree( GetProcessHeap(), 0, xout ); > return ret; > } > > The A call is between parenthesis and winapi_check can't find it. > winapi_check would need to be modified to find those, as I'm sure that's > not the only one in the whole tree. > > Vincent > > -- James Hawkins