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