I am checking an old bug http://bugs.winehq.org/show_bug.cgi?id=9637 which happens to affect several games. Before arriving to the bug in question, one has to workaround another bug relate to shdocvw.dll.
It is recommended to override a set of libraries which I believe should be put in system32. However, at least some of the dlls are already there. Are these the wine builtins or rather proxies as mentioned here: http://winehq.org/site/docs/wineusr-gui ... -wine-main.
Could someone clear up where are the wine builtin dlls and where should I put the overrides in such a way that I can choose between both with winecfg?
about overriding dlls
about overriding dlls
On Sun, Mar 29, 2009 at 2:33 PM, fcmartins <[email protected]> wrote:
--
-Austin
Careful, that dll depends on a few others (mshtml/urlmon/etc.)I am checking an old bug http://bugs.winehq.org/show_bug.cgi?id=9637 which happens to affect several games. Before arriving to the bug in question, one has to workaround another bug relate to shdocvw.dll.
Yes, they are placeholders.It is recommended to override a set of libraries which I believe should be put in system32. However, at least some of the dlls are already there. Are these the wine builtins or rather proxies as mentioned here: http://winehq.org/site/docs/wineusr-gui ... -wine-main.
In system32, or the application's directory.Could someone clear up where are the wine builtin dlls and where should I put the overrides in such a way that I can choose between both with winecfg?
--
-Austin
Thanks, out of curiosity, how does wine provide its dlls? I'm guessing they are packed in some file(s) out of Windows installation and depending on overriding information, a dll func call is directed to the builtin or the native dll. Where the builtin really exists, its hidden from the calling function.
Something like this or another approach?
Something like this or another approach?
As native ELF libraries with extra Wine-specific data. For apps they look exactly as regular windows dlls (otherwise many programs won't work).fcmartins wrote:Thanks, out of curiosity, how does wine provide its dlls?
Unless you know how loader works it's useless to explain you how Wine does it. All you need to know:
- Only the whole dll can be overridden (not per/function as you implied)
- Depending on override order whole built-in or native dll is loaded (but not both at the same time)
- Wine builtin dlls located outside of wineprefix (~/.wine). All you see in system32 are "placeholder dlls" - resources only