Re: Adding/Stubbing out a DLL

Peter Hunnisett <[email protected]> Tue, 28 Sep 2004 08:24:21 -0400
Newsgroups gmane.comp.emulators.winex.devel
Message-ID <[email protected]>
Adam Luchjenbroers wrote:

>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>I just want to know how to add a new DLL and stub out the functions (to be 
>implemented later).
>
>Trying to add iphlpapi.dll, which is used by Dawn Of War. It appears to be 
>unable to load without it but once I have a stubbed implementation I can 
>start implementing the calls it needs. Unfortunately I'm not familiar with 
>Wine programming. 
>* Do I need to declare new debug channels somewhere or are they just a string?
>  
>
If you want a new one, it must be in the spec file.

>* What is the difference between a stub function such as that found in 
>oleaut32/stubs.c and just defining something as a stub in the .spec file
>  
>
Stub in the spec file will crash on addess 0xdeadbeef and generate a 
warning at startup. A stub in the code will potentially allow a program 
to continue operating.

>* While the format of the .spec file seems straightforward, can I get a 
>reference on the exact types that can be defined as parameters.
>

look in tools/winebuild/README that should define everything.

> 
>
>Information on the IP Helper API can be found here.
>http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/intprothelp.asp
>  
>

If you'd like an easier way, then just bring over any of the X11 
licensed patches for this DLL by Juan Lang (see 
http://cvs.winehq.org/cvsweb/wine/dlls/iphlpapi/ but more importantly 
his actual patch submission). His name is on the master list of 
"everything I do is X11 licensed unless explictly indicated so" found at 
http://www.ping.uio.no/~ovehk/rewind/contrib-list.cgi. The best thing to 
do it to generate a patch for ReWind first and then get it committed 
there. It may be that it requires extra functionality, as would 
presumably Cedega, to get it going.

Ciao,
Peter

>- -- 
>Please Remain Calm, I may be crazy, but I am a professional.
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.2.4 (GNU/Linux)
>
>iD8DBQFBWVbG94zI/zB2CYURArhWAJ0ds6yrkX7iUWpYlaqPiuIrrWZ8+ACeKLsA
>aCUWc4WMf+dWYQGVkBoADow=
>=a0xh
>-----END PGP SIGNATURE-----
>
>  
>