Longman dictionary installer debugging

Rizsanyi Zsolt rizsanyi at myrealbox.com
Sat Mar 2 14:40:41 CST 2002


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
-------------- next part --------------
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ldoce.log.gz
Type: application/x-gzip
Size: 5465 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-users/attachments/20020302/ea8c7c53/ldoce.log.bin


More information about the wine-users mailing list