[Bug 33523] New: .NET Framework 3.5 WPF 3.x apps need windowscodecsext.dll.DllGetClassObject

wine-bugs at winehq.org wine-bugs at winehq.org
Sat May 4 10:07:01 CDT 2013


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

             Bug #: 33523
           Summary: .NET Framework 3.5 WPF 3.x apps need
                    windowscodecsext.dll.DllGetClassObject
           Product: Wine
           Version: 1.5.29
          Platform: x86
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: windowscodecs
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: focht at gmx.net
    Classification: Unclassified


Hello folks,

some guys complained about .NET Framework 3.5 WPF 3.x apps not working ... so I
looked into it.

Example app: "Adobe Digital Editions 2.0" which requires .NET 3.5 SP1

Prerequisite: clean 32-bit WINEPREFIX and 'winetricks -q dotnet35sp1'

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Adobe/Adobe Digital Editions 2.0
...
wine ./DigitalEditions.exe
...
fixme:advapi:ReportEventW
(0xcafe4242,0x0001,0x0000,0x00001388,(nil),0x000b,0x00000104,0x3009b09c,0x5ec5d4):
stub
err:eventlog:ReportEventW L"clr20r3"
err:eventlog:ReportEventW L"digitaleditions.exe"
err:eventlog:ReportEventW L"2.0.0.0"
err:eventlog:ReportEventW L"5058357c"
err:eventlog:ReportEventW L"presentationcore"
err:eventlog:ReportEventW L"3.0.0.0"
err:eventlog:ReportEventW L"488f140b"
err:eventlog:ReportEventW L"4975"
err:eventlog:ReportEventW L"159"
err:eventlog:ReportEventW L"system.invalidcastexception"
err:eventlog:ReportEventW L"NIL"
...
Unhandled Exception: System.InvalidCastException: Specified cast is not valid.
   at System.Windows.Media.Imaging.BitmapSource.get_DUCECompatibleMILPtr()
   at
System.Windows.Media.Imaging.BitmapSource.UpdateBitmapSourceResource(Channel
channel, Boolean skipOnChannelCheck)
   at System.Windows.Media.Imaging.BitmapSource.UpdateResource(Channel channel,
Boolean skipOnChannelCheck)
   at System.Windows.Media.Imaging.BitmapSource.AddRefOnChannelCore(Channel
channel)
   at
System.Windows.Media.Imaging.BitmapSource.System.Windows.Media.Composition.DUCE.IResource.AddRefOnChannel(Channel
channel)
   at System.Windows.Media.ImageBrush.AddRefOnChannelCore(Channel channel)
   at
System.Windows.Media.Brush.System.Windows.Media.Composition.DUCE.IResource.AddRefOnChannel(Channel
channel)
   at
System.Windows.Media.RenderData.System.Windows.Media.Composition.DUCE.IResource.AddRefOnChannel(Channel
channel)
   at System.Windows.UIElement.RenderContent(RenderContext ctx, Boolean
isOnChannel)
...
--- snip ---

Well, that's bug 33384 -> 'winetricks -q windowscodecs'

It goes further but still crashes, now with:

--- snip ---
...
LIBRARY_LOADED
has 1 records
fixme:shell:URL_ParseUrl failed to parse L"System.Web"
fixme:time:GetDynamicTimeZoneInformation (0x145b60) stub!
err:ole:CoInitializeEx Attempt to change threading model of this apartment from
apartment threaded to multi-threaded
wine: Call from 0x7b83aa5b to unimplemented function
windowscodecsext.dll.DllGetClassObject, aborting
fixme:advapi:RegisterEventSourceW ((null),L".NET Runtime"): stub
fixme:advapi:ReportEventW
(0xcafe4242,0x0001,0x0000,0x000003ff,(nil),0x0001,0x00000000,0x32bd5c,(nil)):
stub
err:eventlog:ReportEventW L".NET Runtime version 2.0.50727.3053 - Unrecoverable
system error."
...
fixme:advapi:RegisterEventSourceW ((null),L".NET Runtime 2.0 Error Reporting"):
stub
fixme:advapi:ReportEventW
(0xcafe4242,0x0001,0x0000,0x00001388,(nil),0x000b,0x000000d2,0x3009b09c,0x5ec5d4):
stub
err:eventlog:ReportEventW L"clr20r3"
err:eventlog:ReportEventW L"digitaleditions.exe"
err:eventlog:ReportEventW L"2.0.0.0"
err:eventlog:ReportEventW L"5058357c"
err:eventlog:ReportEventW L"windowsbase"
err:eventlog:ReportEventW L"3.0.0.0"
err:eventlog:ReportEventW L"488f1338"
err:eventlog:ReportEventW L"da"
err:eventlog:ReportEventW L"1b"
err:eventlog:ReportEventW L"fatalerror"
err:eventlog:ReportEventW L"NIL"
...
--- snip ---

Setting 'windowscodecsext' to 'native' works around (just like 'windowscodecs'
in winetricks recipe).

Source:
http://source.winehq.org/git/wine.git/blob/e002d2eacfc5371bc4a964515448c9ad2db52e76:/dlls/windowscodecsext/windowscodecsext.spec

--- snip ---
   1 @ stub DllGetClassObject
   2 @ stdcall IWICColorTransform_Initialize_Proxy(ptr ptr ptr ptr ptr)
IWICColorTransform_Initialize_Proxy_W
   3 @ stdcall WICCreateColorTransform_Proxy(ptr)
--- snip ---

@austin/winetricks maintainers:

For the time being it might be useful to add this additional override to
winetricks by default as part of 'winetricks windowscodecs' recipe.

With that modified recipe the app goes further ... only to crash again.

+relay gives a hint:

--- snip ---
002b:Call KERNEL32.OutputDebugStringW(7a09e7d8 L"CLR: Managed code called
FailFast, saying \"") ret=7a14be4c
002b:Ret  KERNEL32.OutputDebugStringW() retval=0032c130 ret=7a14be4c
002b:Call KERNEL32.OutputDebugStringW(7a3c3f80 L"Unrecoverable system error.")
ret=7a14be4c
002b:Ret  KERNEL32.OutputDebugStringW() retval=0032c130 ret=7a14be4c
002b:Call KERNEL32.OutputDebugStringW(7a09e7cc L"\"\r\n") ret=7a14be4c
002b:Ret  KERNEL32.OutputDebugStringW() retval=0032c130 ret=7a14be4c 
--- snip ---

FailFast? That looks like bug 32323
Indeed, 'winetricks corefonts' works around (actually only 'arial32.exe'
installer is needed).

With the small recipes in place "Adobe Digital Editions 2.0" starts
successfully and ebooks can be managed/read.

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