segin2005 at gmail.com
Sun Feb 26 12:26:33 CST 2006
Alexander N. Sørnes wrote:
> I have found that some Westwood installers, such as the ones for Nox,
> C&C Tiberian Sun, C&C Yuri's Revenge and C&C Tiberain Sun: Firestorm
> require ddraw.dll to be present in the windows/system 32 directory; if
> not, they give a message saying they failed to initialize DirectX.
> Can someone submit a patch so this file is created by
> wineprefixcreate? ddraw.dll is present system directories of both
> Windows 98SE and Windows XP.
> Alexander N. Sørnes
I wouldn't know why it does this, but a highly likely explanation is
that the installers dlopen() C:\WINDOWS\DDRAW.DLL using an absolute or
semi-absolute (flexible Windows directory, in case Windows is installed
on D: or even in "D:\WINNT\") path. It probably also tries to stat()
thew file before opening it so that the lack of the file causes an error
before it is dlopen()d.
A good suggestion is if a DLL file is stat()d in the
c:\windows\system(32) directory in Wine, Wine should check it against
any .so files in $INSTALLPREFIX/lib/wine, and claim the file exist if a
compatable .dll.so is found. Wine should also 'remember' this mapping in
case of fopen() or compatable calls.
More information about the wine-devel