[Bug 17084] New: .NET 1.0: imagehlp.ImageGetDigestStream needs more flesh (assembly registration fails)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Jan 22 17:16:05 CST 2009


http://bugs.winehq.org/show_bug.cgi?id=17084

           Summary: .NET 1.0: imagehlp.ImageGetDigestStream needs more flesh
                    (assembly registration fails)
           Product: Wine
           Version: 1.1.13
          Platform: Other
               URL: http://www.microsoft.com/DownLoads/details.aspx?familyid
                    =D7158DEE-A83F-4E21-B05A-009D06457787
        OS/Version: other
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: imagehlp
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: focht at gmx.net


Hello,

a bit of nostalgia ... I happen to test .NET 1.0 Framework and promptly found a
bug in post install step.

--- snip ---
...
Microsoft (R) .NET Framework Assembly Registration Utility 1.0.3705.0
Copyright (C) Microsoft Corporation 1998-2001.  All rights reserved.

err:ole:CoGetClassObject class {00000349-0000-0000-c000-000000000046} not
registered
err:ole:CoGetClassObject class {00000349-0000-0000-c000-000000000046} not
registered
err:ole:create_server class {00000349-0000-0000-c000-000000000046} not
registered
fixme:ole:CoGetClassObject CLSCTX_REMOTE_SERVER not supported
err:ole:CoGetClassObject no class object {00000349-0000-0000-c000-000000000046}
could be created for context 0x17
fixme:imagehlp:ImageGetDigestStream (0x148, 4, 0x79310a0c, 0x33f704): stub
RegAsm error: Index was outside the bounds of the array.
fixme:ole:CoGetContextToken stub
err:msi:ITERATE_Actions Execution halted, action L"InstallFinalize" returned
1603
err:msi:ITERATE_Actions Execution halted, action L"ExecuteAction" returned 1603
--- snip ---

Trace log:

--- snip ---
0009:Call KERNEL32.CreateFileW(00153d48
L"C:\\windows\\Microsoft.NET\\Framework\\v1.0.3705\\RegAsm.exe",80000000,00000001,00000000,00000003,00000000,00000000)
ret=791b81ab
0009:Ret  KERNEL32.CreateFileW() retval=00000150 ret=791b81ab
0009:Call KERNEL32.GetModuleHandleW(7923122c L"mscorwks.dll") ret=7923115e
0009:Ret  KERNEL32.GetModuleHandleW() retval=791b0000 ret=7923115e
0009:Call KERNEL32.GetModuleFileNameW(791b0000,0032f4bc,00000104) ret=792311a3
0009:Ret  KERNEL32.GetModuleFileNameW() retval=00000039 ret=792311a3
0009:CALL MSVCR70.wcsrchr() ret=792311b6
0009:RET  MSVCR70.wcsrchr() retval=0032f514 ret=792311b6
0009:CALL MSVCR70.wcscpy() ret=792311ce
0009:RET  MSVCR70.wcscpy() retval=0032f516 ret=792311ce
0009:Call KERNEL32.LoadLibraryExW(0032f4bc
L"C:\\windows\\Microsoft.NET\\Framework\\v1.0.3705\\imagehlp.dll",00000000,00000000)
ret=791bde71
0009:Call PE DLL (proc=0x60df3458,module=0x60de0000
L"imagehlp.dll",reason=PROCESS_ATTACH,res=(nil))
0009:Call KERNEL32.DisableThreadLibraryCalls(60de0000) ret=60df1cdb
0009:Ret  KERNEL32.DisableThreadLibraryCalls() retval=00000001 ret=60df1cdb
0009:Call KERNEL32.HeapCreate(00000000,00010000,00000000) ret=60df1cfa
0009:Ret  KERNEL32.HeapCreate() retval=02d50000 ret=60df1cfa
0009:Ret  PE DLL (proc=0x60df3458,module=0x60de0000
L"imagehlp.dll",reason=PROCESS_ATTACH,res=(nil)) retval=1
0009:Ret  KERNEL32.LoadLibraryExW() retval=60de0000 ret=791bde71
0009:Call KERNEL32.GetProcAddress(60de0000,79310bdc "ImageGetDigestStream")
ret=79310b16
0009:Ret  KERNEL32.GetProcAddress() retval=60df10d8 ret=79310b16
0009:Call imagehlp.ImageGetDigestStream(00000150,00000004,79310a0c,0032f704)
ret=79310b2e
0009:fixme:imagehlp:ImageGetDigestStream (0x150, 4, 0x79310a0c, 0x32f704): stub
0009:Call KERNEL32.SetLastError(00000078) ret=60df28d1
0009:Ret  KERNEL32.SetLastError() retval=00000078 ret=60df28d1
0009:Ret  imagehlp.ImageGetDigestStream() retval=00000000 ret=79310b2e
0009:Call KERNEL32.CloseHandle(00000150) ret=79310bc4
0009:Ret  KERNEL32.CloseHandle() retval=00000001 ret=79310bc4
0009:Call KERNEL32.FreeLibrary(60de0000) ret=79310bd2
0009:Call PE DLL (proc=0x60df3458,module=0x60de0000
L"imagehlp.dll",reason=PROCESS_DETACH,res=(nil))
0009:Call KERNEL32.HeapDestroy(02d50000) ret=60df1d19
0009:Ret  KERNEL32.HeapDestroy() retval=00000001 ret=60df1d19
0009:Ret  PE DLL (proc=0x60df3458,module=0x60de0000
L"imagehlp.dll",reason=PROCESS_DETACH,res=(nil)) retval=1
0009:Ret  KERNEL32.FreeLibrary() retval=00000001 ret=79310bd2
...
0009:Call KERNEL32.RaiseException(e0434f4d,00000001,00000000,00000000)
ret=7921e860
0009:trace:seh:raise_exception code=e0434f4d flags=1 addr=0x7b844f7c
ip=0x7b844fff tid=0009
0009:trace:seh:raise_exception  eax=7b82cca9 ebx=7b8c3940 ecx=00000000
edx=00000010 esi=0032f430 edi=0032f3b0
0009:trace:seh:raise_exception  ebp=0032f398 esp=0032f334 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00000246
0009:trace:seh:call_stack_handlers calling handler at 0x7921e874 code=e0434f4d
flags=1
--- snip ---

With ImageGetDigestStream() sufficiently implemented, assembly registration
succeeds and installer completes (tested).

Be aware there is some sporadic heap corruption happening not yet tracked down
(also in .NET 1.1 installer) which might sometimes fail the installer -> run
installer again.

Regards


-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list