Hi! I'm trying to install the Longman Dictionary of Contemporary English (which I have got with the book with the same name). I'm running: the latest wine release (20020228) Redhat 7.2 gcc 2.96-98 fake windows dir (altough I have tried it with a win98 install a month ago) The installer is an installshild with win16 libs. When I run it, it puts up a message box, that the install files could not be copied. So I have turned on debugging: wine --debugmsg +file setup.exe The output is in ldoce-file.log. I have stripped the beginning of the file till when it creates its first file for installation. That file is an temporary file, and it is really created. But after that comes the message box. Beetwen I found some fixmes, so I tried to find out whats the problem with them. I have put a breakpoint in the _lclose16 (in files/file.c), and here is the debug session. Wine-dbg>bt Backtrace: =>0 0x40085668 (_lclose16(hFile=0x42826914) [file.c:1177] in libntdll.so) (ebp=428268f4) 1 0x407d6801 (WPROCS_CallFrom16_p_intr_+0x9(proc=0x400b88dc, args=0x403af174, context=0x42826914) [wprocs.spec.c:30] in libkern 2.so) (ebp=42826900) 2 0x4008d969 (KERNEL32.DLL.__wine_call_from_16_regs+0x13d in libntdll.so) (ebp=42826c00) 3 0x0287:0x2131 (bp=3586) 4 0x0287:0x1236 (bp=3592) 5 0x0287:0x12b3 (bp=35a0) 6 0x0287:0x20a7 (bp=35b4) 7 0x0287:0x337c (bp=35be) 8 0x0287:0x339f (bp=35cc) 9 0x0287:0x00c4 (bp=0000) ? Wine-dbg>info local _lclose16: int hFile == 0x42826914 short unsigned int hFile (optimized into register $eax) == 0x00000000G Wine-dbg>up 30 } Wine-dbg>info local WPROCS_CallFrom16_p_intr_: none(*none)()* proc == 0x400b88dc unsigned char* args == 0x403af174 none* context == 0x42826914 Wine-dbg>up Wine-dbg>info local KERNEL32.DLL.__wine_call_from_16_regs: Wine-dbg>up Wine-dbg>info local _end: Wine-dbg>up Wine-dbg>info local _end: Wine-dbg>up Wine-dbg>info local _end: Wine-dbg>up Wine-dbg>info local _end: Wine-dbg>cont First chance exception: wait failed on critical section 0x400fc504 (Win16Mutex in libntdll.so) Stopped on breakpoint 4 at 0x40085668 (_lclose16 [file.c:1177] in libntdll.so) 1177 { Wine-dbg>info local _lclose16: int hFile == 0x42826914 short unsigned int hFile (optimized into register $eax) == 0x00000002 Wine-dbg>cont Stopped on breakpoint 4 at 0x40085668 (_lclose16 [file.c:1177] in libntdll.so) 1177 { Wine-dbg>info local _lclose16: int hFile == 0x42826914 short unsigned int hFile (optimized into register $eax) == 0x00000003 Wine-dbg>cont Stopped on breakpoint 4 at 0x40085668 (_lclose16 [file.c:1177] in libntdll.so) 1177 { Wine-dbg>info local _lclose16: int hFile == 0x42826914 short unsigned int hFile (optimized into register $eax) == 0x00000004 Wine-dbg>bt Backtrace: =>0 0x40085668 (_lclose16(hFile=0x42826914) [file.c:1177] in libntdll.so) (ebp=428268f4) 1 0x407d6801 (WPROCS_CallFrom16_p_intr_+0x9(proc=0x400b88dc, args=0x403af174, context=0x42826914) [wprocs.spec.c:30] in libkerne 2.so) (ebp=42826900) 2 0x4008d969 (KERNEL32.DLL.__wine_call_from_16_regs+0x13d in libntdll.so) (ebp=42826c00) 3 0x0287:0x2131 (bp=3586) 4 0x0287:0x1236 (bp=3592) 5 0x0287:0x12b3 (bp=35a0) 6 0x0287:0x20a7 (bp=35b4) 7 0x0287:0x337c (bp=35be) 8 0x0287:0x339f (bp=35cc) 9 0x0287:0x00c4 (bp=0000) Wine-dbg>cont Stopped on breakpoint 4 at 0x40085668 (_lclose16 [file.c:1177] in libntdll.so) 1177 { Wine-dbg>info local _lclose16: int hFile == 0x42826914 short unsigned int hFile (optimized into register $eax) == 0x00000002 The interesting is that somebody closes all the dos handles from 0 to 18. (This can be also seen from the ldoce.log.gz which is a --debugmsg +all output, which is also cut till the file is created, and after the resource string for the message box is loaded) I have debugged this 2-3 hours so I have decided to send you the results even though I have found out that if I run the install exe from a subdirectory of the cd then the installer goes somewhat better. (of course the setup.exe also calls that install.exe - just than it does not work). This way the installer has different problems. I'm running it managed mode, but it puts up an unmanaged full screen window - the well known blue background of the installers. It appears always on top, and I cant see the smaller window with the standart back/next dialog. If I minimize the window, and click on the icon to restore I dont get back the background, but the dialog for installation. And if click through it, the installation is finished, although severe dde problems are reported. I'm willing to send the trace messages, if somebody would advise me which debug channels to turn on. Installation seems to be successful (despite the error messages). I tried to run the program, and got the same error messages as when I tried to run the program a month ago from a win98 windows install where to program was already properly installed. The errors are: fixme:win32:DEVICE_Open Unknown/unsupported VxD SICE. Try --winver nt40 or win31 ! fixme:win32:DEVICE_Open Unknown/unsupported VxD SIWVID. Try --winver nt40 or win31 ! fixme:win32:DEVICE_Open Unknown/unsupported VxD NTICE. Try --winver nt40 or win31 ! wine: Unhandled exception, starting debugger... Is it hard to implement those functions? I'm willing to do some coding, but I dont know too much about the windows api... It is also interresting that if I dont run the program directly, but by the setup.exe from the cd (which recognizes that the program is already installed, and starts it) I again got the _lclose16 fixmes. And in that case my debugger session is interrupted after approximately 60 s. fixme:win32:DEVICE_Open Unknown/unsupported VxD SICE. Try --winver nt40 or win31 ! fixme:win32:DEVICE_Open Unknown/unsupported VxD SIWVID. Try --winver nt40 or win31 ! fixme:win32:DEVICE_Open Unknown/unsupported VxD NTICE. Try --winver nt40 or win31 ! wine: Unhandled exception, starting debugger... fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion Sorry for this long letter, but I thought if I have worked on it, I should share the results even it they ain't worth anything. (so the reasons are somewhat selfish ;) Thank you for your patience Zsolt Rizsanyi
trace:file:FILE_DoOpenFile F:\_INS0433._MP OF_READ OF_SHARE_COMPAT OF_EXIST trace:file:FILE_DoOpenFile F:\_INS0433._MP 4000 warn:file:FILE_DoOpenFile 'F:\_INS0433._MP' not found or sharing violation warn:file:FILE_DoOpenFile (F:\_INS0433._MP): return = HFILE_ERROR error= 2 trace:file:FILE_DoOpenFile F:\_INS0433._MP OF_READ OF_SHARE_COMPAT OF_CREATE trace:file:FILE_DoOpenFile F:\_INS0433._MP 1000 trace:file:CreateFileA F:\_INS0433._MP GENERIC_READ GENERIC_WRITE FILE_SHARE_READ FILE_SHARE_WRITE CREATE_ALWAYS trace:file:FILE_DoOpenFile (F:\_INS0433._MP): OK, return = 88 trace:file:Win32HandleToDosFileHandle Got 6 for h32 88 fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion fixme:file:_lclose16 stdio handle closed, need proper conversion trace:file:_lclose16 5 (handle32=80) trace:file:_lclose16 6 (handle32=88) trace:file:SetFilePointer handle -1 offset 222 high 0 origin 0 trace:file:WIN16_hread 5 03f70004 6192 trace:file:ReadFile -1 0x403c7dc4 6192 0x429767e8 (nil) trace:file:SetFilePointer handle 64 offset 3008 high 0 origin 0 trace:file:ReadFile 64 0x403cb33c 48 0x42976780 (nil) trace:file:SetFilePointer handle 64 offset 3008 high 0 origin 0 trace:file:ReadFile 64 0x403cb33c 48 0x42976780 (nil) trace:file:SetFilePointer handle 64 offset 3008 high 0 origin 0 trace:file:ReadFile 64 0x403cb33c 48 0x42976780 (nil) trace:file:SetFilePointer handle 64 offset 3056 high 0 origin 0 trace:file:ReadFile 64 0x403ccbe0 1104 0x42976780 (nil) trace:file:SetFilePointer handle 64 offset 3056 high 0 origin 0 trace:file:ReadFile 64 0x403ccbe0 1104 0x42976780 (nil) trace:file:SetFilePointer handle 64 offset 3056 high 0 origin 0 trace:file:ReadFile 64 0x403ccbe0 1104 0x42976780 (nil) trace:file:FILE_DoOpenFile F:\_INS0433._MP OF_READ OF_SHARE_COMPAT OF_DELETE trace:file:FILE_DoOpenFile F:\_INS0433._MP 0200 trace:file:FILE_DoOpenFile found /tmp/_INS0433._MP = F:\_INS0433._MP trace:file:FILE_DoOpenFile (F:\_INS0433._MP): OF_DELETE return = OK trace:file:FILE_DoOpenFile F:\_INZ0433._MP OF_READ OF_SHARE_COMPAT OF_DELETE trace:file:FILE_DoOpenFile F:\_INZ0433._MP 0200 warn:file:FILE_DoOpenFile 'F:\_INZ0433._MP' not found or sharing violation warn:file:FILE_DoOpenFile (F:\_INZ0433._MP): return = HFILE_ERROR error= 2 trace:file:FILE_DoOpenFile F:\_INZ0433._MP OF_READ OF_SHARE_COMPAT OF_DELETE trace:file:FILE_DoOpenFile F:\_INZ0433._MP 0200 warn:file:FILE_DoOpenFile 'F:\_INZ0433._MP' not found or sharing violation warn:file:FILE_DoOpenFile (F:\_INZ0433._MP): return = HFILE_ERROR error= 2 trace:file:FILE_DoOpenFile C:\WINDOWS\_delis43.ini OF_READ OF_SHARE_COMPAT OF_DELETE trace:file:FILE_DoOpenFile C:\WINDOWS\_delis43.ini 0200 warn:file:FILE_DoOpenFile 'C:\WINDOWS\_delis43.ini' not found or sharing violation warn:file:FILE_DoOpenFile (C:\WINDOWS\_delis43.ini): return = HFILE_ERROR error= 2
Attachment:
ldoce.log.gz
Description: GNU Zip compressed data