Module: docs Branch: master Commit: ddb2e42b3ee828fff02e4d460fe6e2177dad9e68 URL: http://source.winehq.org/git/docs.git/?a=commit;h=ddb2e42b3ee828fff02e4d460f...
Author: Jeff Zaroyko jeffz@jeffz.name Date: Fri Jul 16 14:20:40 2010 +1000
wineusr: Revise section on configuring native DLLs.
---
en/wineusr-configuring.sgml | 84 +++++++++++++++++++++---------------------- 1 files changed, 41 insertions(+), 43 deletions(-)
diff --git a/en/wineusr-configuring.sgml b/en/wineusr-configuring.sgml index 67342ac..1efb21a 100644 --- a/en/wineusr-configuring.sgml +++ b/en/wineusr-configuring.sgml @@ -129,26 +129,25 @@ <para> Likewise, some applications require specific libraries in order to run. Wine reproduces the Windows system libraries (so-called - native DLL's) with completely custom versions designed to + native DLLs) with completely custom versions designed to function exactly the same way but without requiring licenses from Microsoft. Wine has many known deficiencies in it's built-in versions, but in many instances the functionality - is sufficient. Using only builtin DLL's ensures that your + is sufficient. Using only builtin DLLs ensures that your system is Microsoft-free. However, Wine has the ability to - load native Windows DLL's. + load native Windows DLLs. </para> <sect3 id="winecfg-dll-overrides"> <title>DLL Overrides</title> <para> It's not always possible to run an application on builtin - DLL's. Sometimes native DLL's simply work better. After - you've located a native DLL on a Windows system, you'll - need to put it in suitable place for Wine to find it - and then configure it to be used. Generally the place - you need to put it is in the directory you've configured - to be <filename>c:\windows\system32</filename> (more on that in - the drives section). There are four DLL's you should never - try to use the native versions of: + DLLs, but sometimes native versions will be recommended as + a workaround for a specific problem. + Some may be directly copied to the directory configured + as <filename>c:\windows\system32</filename> (more on that in + the drives section) while others may require an installer, see + the next section on winetricks. + Native versions of these DLLs do not work: <filename>kernel32.dll</filename>, <filename>gdi32.dll</filename>, <filename>user32.dll</filename>, @@ -159,7 +158,7 @@ <para> With that in mind, once you've copied the DLL you just need to tell Wine to try to use it. You can configure Wine to choose - between native and builtin DLL's at two different levels. + between native and builtin DLLs at two different levels. If you have <emphasis>Default Settings</emphasis> selected in the <emphasis>Applications</emphasis> tab, the changes you make will affect all applications. Or, you can override the @@ -178,34 +177,8 @@ Builtin</emphasis>). You can also choose native only, builtin only, or disable it altogether. </para> - </sect3> - <sect3> - <title>Notes About System DLL's</title> - <para> - Applications sometimes also try to inspect the version resources - from the physical files (for example, to determine the DirectX - version). Empty files will not do in this case, it is rather - necessary to install files with complete version resources. This - problem is already fixed for many files. For others, you may still - need to grab some real DLL files to fool these apps with. - </para> - <para> - There are of course DLLs that Wine does not currently implement - very well (or at all). If you do not have a real Windows you can - copy necessary DLLs from, you can always get some from one of the - Windows DLL archive sites that can be found via internet search - engine. Please make sure to obey any licenses on the DLLs you - fetch; some are redistributable, some aren't. - </para> - </sect3> - <sect3> - <title>Missing DLL's</title> <para> - In case Wine complains about a missing DLL, you should check whether - this file is a publicly available DLL or a custom DLL belonging - to your program (by searching for its name on the internet). - After you've located the DLL, you need to make sure Wine is able to - use it. DLLs usually get loaded in the following order: + DLLs usually get loaded in the following order: <orderedlist> <listitem> <para> @@ -233,10 +206,35 @@ </para> </listitem> </orderedlist> - In short: either put the required DLL into your program - directory (might be ugly), or put it into the Windows system32 - directory. - </para> + </para> + </sect3> + <sect3> + <title>Notes About System or Missing DLLs</title> + <para> + There are of course DLLs that Wine does not currently implement + very well (or at all). + </para> + <para> + In case Wine complains about a missing DLL, you should check whether + this file is a publicly available DLL or a custom DLL belonging + to your program. In the latter case, check that you have installed + your program correctly. + <para> + Most often applications will assume that a required redistributable + package has already been installed and subsequently fail to run when + the required dependencies are not met. For example: + <para> + <programlisting>err:module:import_dll Library MFC42.DLL (which is needed by L"C:\Program Files\Foo\Bar.dll") not found</programlisting> + <para> + </para> + <para> + Redistributable packages which install the necessary runtimes can + be obtained through the use of <ulink url="http://wiki.winehq.org/winetricks"> + winetricks</ulink>. Note, these components are subject to their own + license and are not part of the Wine project. You should refer to + the application's <ulink url="http://appdb.winehq.org">AppDB</ulink> + entry for advice on what is required. + </para> </sect3> </sect2> <sect2>