Martin Wilck Martin.Wilck@fujitsu-siemens.com wrote:
I am sorry to say that I still don't quite understand this issue, but - can anybody point me to a resource saying what exactly I may or may not do when writing code for a wine DLL? In particular, when writing code for DLL X, which functions from other DLLs may I call?
This interests me as well!
Example: When writing netapi32 code, can I call advai32 Registry functions to obtain config options, or do I need to use the (IMO rather awkward) ntdll interface ?
I was under the impression that the main issue was that no DLL calls not officially exported functions in any other DLL, with officially exported meaning any function which is not wine specific eg. is also exported by the according MS Windows DLL. I have gotten the impression that all Wine specific exports start with the uppercase name of the DLL which implements them followed by an underscore and then the actual name and the main and final target is to get rid of any and all exports of such functions.
So in general I would think that usage of the Reg.. functions from ADVAPI32 should be ok, but I'm not familiar with NETAPI32 at all and how it relates to the rest of Win. Maybe it is more considered part of the actual Win kernel and therefore should maybe call the Nt... functions in NTDLL. But the Reg... functions are really just a convinience wrapper around the according Nt... functions and ADVAPI32 is certainly a well known standard DLL.
Btw: Dll separation is a really complex issues and I think I'm not the only one who feels he doesn't quite understand what it means. IMO winehq needs a very clear description of that somewhere where it's easy to find.
Some documentation or a link to them would certainly help.
Rolf Kalbermatter