documentation for SERVER_START_REQ
James Hawkins
truiken at gmail.com
Mon Mar 7 15:21:45 CST 2005
On Mon, 7 Mar 2005 11:51:53 -0600, James Hawkins <truiken at gmail.com> wrote:
> Hi,
>
> I'm implementing NtLoadKey, but I can't find any documentation on
> making server requests, ie SERVER_START_REQ, the different tracing
> abilitites such as using fprintf(stderr,...) instead of the known
> TRACE, style of code etc. The latter two are not as important to me
> because I've picked them up while perusing the code, but it might be
> important to someone who hasn't looked through it before. I do need
> the semantics for SERVER_START_REQ, so if you could point me in the
> right direction or tell me I would really appreciate it.
I've looked deeper into this and found include/wine/server.h and the
SERVER_START_REQ define. So this define is a method of communication
between the client(?) and server? One thing I don't understand is why
we put the request in two do...while(0) loops. Won't they just run
once anyway?
Concerning Reg/NtLoadKey, load_key (in the server) looks implemented
to me. NtLoadKey is not is not implemented. RegLoadKeyW/A is
implemented, but it opens the file containing the hive to load to the
registry and then calls load_registry which loads a part of the
registry from a file. While this probably does work, I think the
correct thing to do is:
* Implement NtLoadKey, having it call load_key in the server
* Rewrite RegLoadKey to call NtLoadKey
What do you think?
--
James Hawkins
More information about the wine-devel
mailing list