Advapi32: Service Control RPC
rob at codeweavers.com
Thu Jan 10 03:24:03 CST 2008
Rolf Kalbermatter wrote:
> Robert Shearman [mailto:rob at codeweavers.com] wrote:
>> No. Everything (except multi-dimensional arrays, possibly)
>> can already be done by the code we output already. Adding
>> code to output -Oicf proc format strings in widl would be
>> possible, but unnecessary.
> Ok, but I have made some parameter protocols to NdrClientCall2
> from native advapi32 and believe that using those MIDL format
> informations could allow to make an idl file that would result
> in a fully wire compatible protocol to the MS services.exe one.
> It's not exactly trivial to decode the MIDL_ProcFormatString
> but by verifying the generated MIDL generated code against those
> protocolled parameters would certainly help a lot.
We really don't want to do development in that way. It would be much
better to use the information that Samba have gained in a clean way
combined with documentation with the equivalent Win32 function to figure
out the compatible IDL file.
> A first not
> through check seems to indicate that almost every service control
> API has its own services.exe rpc message, so no ANSII to Widechar
> translation in the Advapi32.dll! Probably because there was a
> services.exe implementation before the widechar APIs got introduced.
> Also the protocol message numbers seem to have some holes, probably
> some undocumented APIs here.
This kind of work has already been done and the interface fairly well
documented, so I'll point you at this documentation:
More information about the wine-devel