Hi all,
there is some good news to tell about WIDL. It is able to build the header file, client stub file and server stub file for _very_ simple rpc applications. I got a slightly modified version of the hello example from MSDN working.
There are still a lot of features missing from WIDL but it is able to create stubs for simple functions that don't take any arguments and return no or basic type values. Returning pointers is not supported yet. So, supported functions look like that:
void My1stRpcFunc(void); int My2ndRpcFunc(void); unsingned long My3rdRpcFunc(void);
Another restriction is the handling of implicit binding handles. These binding handles are usually declared in an ACF file. But since ACF files are not supported yet the declaration must take place in the IDL file. MIDL supports this as well if you use the '/app_config' option.
Explicit binding handles are not supported yet.
Finally, WIDL does not support MIDLs '/oldnames' option. This option is used to enable the old naming conventions for interface handles. This is a minor issue because the MSDN examples use the old naming conventions.
Next, I want to implement support for basic type function arguments.
The whole source code to WIDL is published under the LGPL so feel free to contribute it to WINE.
Regards, Eric