https://bugs.winehq.org/show_bug.cgi?id=45588
Bug ID: 45588 Summary: .Net Framework 4.5.2 (WPF) requires windowscodecs.dll.IWICPixelFormatInfo_GetChannelCount_ Proxy Product: Wine Version: 3.13 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: windowscodecs Assignee: wine-bugs@winehq.org Reporter: jp7677@gmail.com Distribution: ---
"Content Manager" (https://acstuff.ru/app/ https://assettocorsa.club/index.php?q=content-manager.html) is an alternative launcher for Assetto Corsa. That one requires/uses WPF from .Net Framework 4.5.2. The launcher works surprisingly well and much better that the original Assetto Corsa launcher which I never got to work. Anyway, "Content Manager" works fine in wine once .Net 4.5.2 is installed, though with several actions, like selecting a track, the program crashes with:
wine: Call from 0x7b43d85b to unimplemented function windowscodecs.dll.IWICPixelFormatInfo_GetChannelCount_Proxy, aborting
Looking at https://github.com/wine-mirror/wine/blob/master/dlls/windowscodecs/windowsco... this method is indeed not implemented in the wine implementation of windowscodecs. It would be nice if this method could be implemented. I don't know if IWICPixelFormatInfo_GetBitsPerPixel_Proxy and IWICPixelFormatInfo_GetChannelMask_Proxy are also needed, but could imagine that this is the case.
PS: Installing the native version of windowscodecs is a somewhat of a work-around. The application does no longer crash, but then a lot of images are no longer displayed correctly (looks like transparent is displayed as white).
Kind regards.
https://bugs.winehq.org/show_bug.cgi?id=45588
jens jp7677@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Hardware|x86 |x86-64
https://bugs.winehq.org/show_bug.cgi?id=45588
jens jp7677@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Fedora
https://bugs.winehq.org/show_bug.cgi?id=45588
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
--- Comment #1 from Fabian Maurer dark.shadow4@web.de ---
PS: Installing the native version of windowscodecs is a somewhat of a work-around. The application does no longer crash, but then a lot of images are no longer displayed correctly (looks like transparent is displayed as white).
Native wincodecs breaks something? Then that's also a bug.
https://bugs.winehq.org/show_bug.cgi?id=45588
--- Comment #2 from jens jp7677@gmail.com --- Created attachment 62024 --> https://bugs.winehq.org/attachment.cgi?id=62024 Content Manager using builtin windowscodecs
Note that the second image (Imola) looks fine.
https://bugs.winehq.org/show_bug.cgi?id=45588
--- Comment #3 from jens jp7677@gmail.com --- Created attachment 62025 --> https://bugs.winehq.org/attachment.cgi?id=62025 Content Manager using native windowscodecs
Note that the second image (Imola) looks damaged.
https://bugs.winehq.org/show_bug.cgi?id=45588
--- Comment #4 from jens jp7677@gmail.com --- See attached screenshots. While builtin windowcodecs looks fine, the application crashes with "unimplemented function IWICPixelFormatInfo_GetChannelCount_Proxy" as soon as you click on the image with the track to select a different. Clicking on the track opens new dialog with other images, some of the other images causes the application to call IWICPixelFormatInfo_GetChannelCount_Proxy.
https://bugs.winehq.org/show_bug.cgi?id=45588
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |dotnet, download CC| |focht@gmx.net Ever confirmed|0 |1 Summary|.Net Framework 4.5.2 (WPF) |.Net Framework 4.5.2 (WPF) |requires |System.Windows.Media.PixelF |windowscodecs.dll.IWICPixel |ormat requires |FormatInfo_GetChannelCount_ |windowscodecs.dll.IWICPixel |Proxy |FormatInfo_{GetChannelCount | |,GetChannelMask,GetBitsPerP | |ixel}_Proxy URL| |https://acstuff.ru/app/ Status|UNCONFIRMED |NEW
--- Comment #5 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming.
In addition to .NET Framework 4.5.2 ('winetricks -q dotnet452') the app needs 'corefonts' (bug 32323)
--- snip --- $ wine ./Content\ Manager.exe ... 0009:fixme:shell:URL_ParseUrl failed to parse L"PresentationFramework-SystemXmlLinq" 0009:fixme:time:GetCalendarInfoEx (L"en-US", 1, (nil), 0xa0000030, (nil), 0, 0x2653d99c): semi-stub 0009:fixme:time:GetCalendarInfoW flag CAL_NOUSEROVERRIDE used, not fully implemented 0009:fixme:time:GetCalendarInfoW Unimplemented caltype 2 0009:fixme:time:GetCalendarInfoW flag CAL_NOUSEROVERRIDE used, not fully implemented 0009:fixme:time:GetCalendarInfoW Unknown caltype 56 0009:fixme:time:GetCalendarInfoW Unknown caltype 55 0009:fixme:time:GetCalendarInfoW Unknown caltype 49 0009:fixme:time:GetCalendarInfoW Unknown caltype 50 0009:fixme:time:GetCalendarInfoW Unknown caltype 51 0009:fixme:time:GetCalendarInfoW Unknown caltype 52 0009:fixme:time:GetCalendarInfoW Unknown caltype 53 0009:fixme:time:GetCalendarInfoW Unknown caltype 54 0009:fixme:time:GetCalendarInfoW Unimplemented caltype 4 0009:fixme:time:GetCalendarInfoW Unimplemented caltype 4 0009:fixme:time:GetCalendarInfoW Unknown caltype 57 0009:fixme:time:GetCalendarInfoW Unknown caltype 57 0009:fixme:advapi:RegisterEventSourceW ((null),L".NET Runtime"): stub 0009:fixme:advapi:ReportEventW (0xcafe4242,0x0001,0x0000,0x00000401,(nil),0x0001,0x00000000,0x339c54,(nil)): stub 0009:err:eventlog:ReportEventW L"Application: Content Manager.exe\nFramework Version: v4.0.30319\nDescription: The application requested process termination through System.Environment.FailFast(string message).\nMessage: Unrecoverable system error.\nStack:\n at System.Environment.FailFast(System.String)\n at MS.Internal.Invariant"... 0009:fixme:advapi:DeregisterEventSource (0xcafe4242) stub --- snip ---
-> 'winetricks -q corefonts'
It also suffers from bug 34978 if you have multi-monitor setup (black user interface)
-> apply Staging-patches or disable anything except primary display
The app briefly shows a crash dialog with managed exception trace before terminating. Using a managed debugger and first-chance breaking on exception code 0x80000100 (unimpl stub):
--- snip --- ... wine: Call from 0x7b447127 to unimplemented function windowscodecs.dll.IWICPixelFormatInfo_GetChannelCount_Proxy, aborting
(33.34): Unknown exception - code 80000100 (first chance)
OS Thread Id: 0x34 (0) Child SP IP Call Site 0033cae0 7b447127 [InlinedCallFrame: 0033cae0] 0033cadc 0a920850 DomainBoundILStubClass.IL_STUB_PInvoke(IntPtr, UInt32 ByRef) 0033cae0 0a9204f7 [InlinedCallFrame: 0033cae0] MS.Win32.PresentationCore.UnsafeNativeMethods+WICPixelFormatInfo.GetChannelCount(IntPtr, UInt32 ByRef) 0033cb14 0a9204f7 System.Windows.Media.PixelFormat.get_Masks() 0033cb54 0a920301 FirstFloor.ModernUI.Windows.Controls.BetterImage.FindCropArea(System.Windows.Media.Imaging.BitmapSource, Int32 ByRef, Int32 ByRef, Int32 ByRef, Int32 ByRef) 0033cba8 0a92015f FirstFloor.ModernUI.Windows.Controls.BetterImage.FindCropMask(System.Windows.Media.ImageSource) 0033cc54 093a6daf FirstFloor.ModernUI.Windows.Controls.BetterImage.MeasureArrangeHelper(System.Windows.Size) 0033cd54 093a6b9c FirstFloor.ModernUI.Windows.Controls.BetterImage.MeasureOverride(System.Windows.Size) 0033cd90 08276c35 System.Windows.FrameworkElement.MeasureCore(System.Windows.Size) 0033d048 08275378 System.Windows.UIElement.Measure(System.Windows.Size) 0033d0c4 0a0b6564 System.Windows.Controls.DockPanel.MeasureOverride(System.Windows.Size) 0033d140 08276c35 System.Windows.FrameworkElement.MeasureCore(System.Windows.Size) 0033d3f8 08275378 System.Windows.UIElement.Measure(System.Windows.Size) 0033d474 282551e7 System.Windows.ContextLayoutManager.UpdateLayout() 0033d544 28262671 System.Windows.ContextLayoutManager.UpdateLayoutCallback(System.Object) 0033d548 28262640 System.Windows.Media.MediaContext+InvokeOnRenderCallback.DoWork() 0033d54c 08abd508 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks() 0033d568 08abcc96 System.Windows.Media.MediaContext.RenderMessageHandlerCore(System.Object) 0033d5bc 08abcba2 System.Windows.Media.MediaContext.RenderMessageHandler(System.Object) 0033d5d4 08abc5eb System.Windows.Media.MediaContext.Resize(System.Windows.Media.ICompositionTarget) 0033d5e4 08abc4ef System.Windows.Interop.HwndTarget.OnResize() 0033d630 08ab9bf2 System.Windows.Interop.HwndTarget.HandleMessage(MS.Internal.Interop.WindowMessage, IntPtr, IntPtr) 0033d70c 0842f822 System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 0033d72c 06c8367b MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 0033d76c 06c835bb MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object) 0033d77c 06c83495 System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32) 0033d7a0 06c8331a MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate) 0033d7e4 06c82ec1 System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32) 0033d838 06c81180 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr) 0033dd64 0039a0d7 [InlinedCallFrame: 0033dd64] MS.Win32.UnsafeNativeMethods.CallWindowProc(IntPtr, IntPtr, Int32, IntPtr, IntPtr) 0033dd60 06c8388d MS.Win32.HwndSubclass.DefWndProcWrapper(IntPtr, Int32, IntPtr, IntPtr) 0033de9c 0039a0d7 [InlinedCallFrame: 0033de9c] 0033de98 06c837f1 DomainBoundILStubClass.IL_STUB_PInvoke(IntPtr, IntPtr, Int32, IntPtr, IntPtr) 0033de9c 06c811d6 [InlinedCallFrame: 0033de9c] MS.Win32.UnsafeNativeMethods.CallWindowProc(IntPtr, IntPtr, Int32, IntPtr, IntPtr) 0033ded8 06c811d6 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr) 0033e30c 0039a0d7 [InlinedCallFrame: 0033e30c] 0033e308 2825e0a9 DomainBoundILStubClass.IL_STUB_PInvoke(IntPtr, IntPtr, Boolean) 0033e30c 2825dfe0 [InlinedCallFrame: 0033e30c] Standard.NativeMethods._SetWindowRgn(IntPtr, IntPtr, Boolean) 0033e340 2825dfe0 Standard.NativeMethods.SetWindowRgn(IntPtr, IntPtr, Boolean) 0033e354 2825d5a0 System.Windows.Shell.WindowChromeWorker._SetRoundingRegion(System.Nullable`1<Standard.WINDOWPOS>) 0033e6c8 2825caab System.Windows.Shell.WindowChromeWorker._UpdateFrameState(Boolean) 0033e728 08372ae1 System.Windows.Shell.WindowChromeWorker._ApplyNewCustomChrome() 0033e738 2825b8c1 System.Windows.Shell.WindowChromeWorker._WindowSourceInitialized(System.Object, System.EventArgs) 0033e750 2825b851 System.Windows.Window.OnSourceInitialized(System.EventArgs) 0033e760 2825b5ca FirstFloor.ModernUI.Windows.Controls.DpiAwareWindow.OnSourceInitialized(System.EventArgs) 0033e7bc 08429066 System.Windows.Window.CreateSourceWindow(Boolean) 0033e88c 08428c4b System.Windows.Window.CreateSourceWindowDuringShow() 0033e890 08428c07 System.Windows.Window.SafeCreateWindowDuringShow() 0033e89c 08428961 System.Windows.Window.ShowHelper(System.Object) 0033e8c4 084284a2 System.Windows.Window.Show() 0033e8d0 0a561a83 System.Windows.Window.ShowDialog() 0033e8d4 0a5606ff [InlinedCallFrame: 0033e8d4] 0033e920 0a5606ff FirstFloor.ModernUI.Windows.Controls.DpiAwareWindow.ShowDialog() 0033e960 0a58cad8 AcManager.Pages.Dialogs.SelectTrackDialog.Show(AcManager.Tools.Objects.TrackObjectBase) 0033e974 0a58ca6f AcManager.Pages.Drive.QuickDrive+ViewModel.<get_ChangeTrackCommand>b__252_0() 0033e980 0a58ca4b FirstFloor.ModernUI.Commands.DelegateCommand.ExecuteOverride() 0033e984 0a58ca2b FirstFloor.ModernUI.Commands.CommandExt.ExecuteOverride(System.Object) 0033e98c 0a58ca0b FirstFloor.ModernUI.Commands.CommandBase.System.Windows.Input.ICommand.Execute(System.Object) 0033e994 0a58c974 AcManager.Pages.Drive.QuickDrive.OnTrackBlockClick(System.Object, System.Windows.RoutedEventArgs) 0033e9a0 0a0adecc System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs) 0033e9b4 0a0ad795 System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean) 0033ea74 0a0ab73d System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs) 0033eaa8 28255db3 System.Windows.UIElement.RaiseEvent(System.Windows.RoutedEventArgs) 0033eab4 0a58c8ff System.Windows.Controls.Primitives.ButtonBase.OnClick() 0033eac0 0a58c867 System.Windows.Controls.Button.OnClick() 0033eae0 0a58c531 System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(System.Windows.Input.MouseButtonEventArgs) 0033eaf0 0a58c434 System.Windows.UIElement.OnMouseLeftButtonUpThunk(System.Object, System.Windows.Input.MouseButtonEventArgs) 0033eb00 0a5837cc System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(System.Delegate, System.Object) 0033eb0c 0a0adf1d System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object) 0033eb30 0a0adedb System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs) 0033eb44 0a0ad795 System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean) 0033ec04 0a583a70 System.Windows.UIElement.ReRaiseEventAs(System.Windows.DependencyObject, System.Windows.RoutedEventArgs, System.Windows.RoutedEvent) 0033ec44 0a58c3b2 System.Windows.UIElement.OnMouseUpThunk(System.Object, System.Windows.Input.MouseButtonEventArgs) 0033ec54 0a5837cc System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(System.Delegate, System.Object) 0033ec60 0a0adf1d System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object) 0033ec84 0a0adedb System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs) 0033ec98 0a0ad795 System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean) 0033ed58 0a0ab73d System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs) 0033ed8c 282b0261 System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs) 0033edb4 28265952 System.Windows.Input.InputManager.ProcessStagingArea() 0033edec 282654b4 System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs) 0033edfc 282653a8 System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport) 0033ee14 0a90087b System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr, System.Windows.Input.InputMode, Int32, System.Windows.Input.RawMouseActions, Int32, Int32, Int32) 0033ee18 0842dee7 [InlinedCallFrame: 0033ee18] 0033eebc 0842dee7 System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr, MS.Internal.Interop.WindowMessage, IntPtr, IntPtr, Boolean ByRef) 0033ef18 0842d38e System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 0033ef3c 06c8367b MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 0033ef7c 06c835bb MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object) 0033ef8c 06c83495 System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32) 0033efb0 06c8331a MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate) 0033eff4 06c82ec1 System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32) 0033f048 06c81180 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr) 0033f2ac 0039a0d7 [InlinedCallFrame: 0033f2ac] 0033f2a8 08270b87 DomainBoundILStubClass.IL_STUB_PInvoke(System.Windows.Interop.MSG ByRef) 0033f2ac 08270239 [InlinedCallFrame: 0033f2ac] MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef) 0033f2e0 08270239 System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame) 0033f328 08270096 System.Windows.Threading.Dispatcher.PushFrame(System.Windows.Threading.DispatcherFrame) 0033f334 079affa6 System.Windows.Application.RunDispatcher(System.Object) 0033f340 079afd52 System.Windows.Application.RunInternal(System.Windows.Window) 0033f354 079afb69 System.Windows.Application.Run(System.Windows.Window) 0033f364 06ae5acc AcManager.App.CreateAndRun(Boolean) 0033f3b0 056bc9f6 AcManager.EntryPoint.MainInner(System.String[]) 0033f3ec 042178c5 AcManager.EntryPoint.MainReal(System.String[]) 0033f400 0421395c AcManager.EntryPoint.Main(System.String[]) 0033f598 00fa2552 [GCFrame: 0033f598] --- snip ---
The code calling into WPF seems to be some third-party framework/assembly (http://firstfloorsoftware.com/) which is dynamically unpacked and loaded in memory (no disk/GAC install).
--- snip --- $ 0:000> !dumpdomain -------------------------------------- System Domain: 015e0f60 LowFrequencyHeap: 015e1284 HighFrequencyHeap: 015e12cc StubHeap: 015e1314 Stage: OPEN Name: None -------------------------------------- Shared Domain: 015e0c08 LowFrequencyHeap: 015e1284 HighFrequencyHeap: 015e12cc StubHeap: 015e1314 Stage: OPEN Name: None Assembly: 00196760 [C:\windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll] ClassLoader: 00196818 Module Name 00383010 C:\windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll
-------------------------------------- Domain 1: 0014e508 LowFrequencyHeap: 0014e95c HighFrequencyHeap: 0014e9a4 StubHeap: 0014e9ec Stage: OPEN SecurityDescriptor: 0014fdb0 Name: Content Manager.exe Assembly: 00196760 [C:\windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll] ClassLoader: 00196818 SecurityDescriptor: 001968f8 Module Name 00383010 C:\windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll
Assembly: 001a7d30 [Z:\home\focht\Downloads\Content Manager.exe] ClassLoader: 001a7de8 SecurityDescriptor: 001a7b00 Module Name 00392edc Z:\home\focht\Downloads\Content Manager.exe
Assembly: 001aa440 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.0.0__b77a5c561934e089\System.Windows.Forms.dll] ClassLoader: 001aa4f8 SecurityDescriptor: 001ac7c8 Module Name 00397170 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.0.0__b77a5c561934e089\System.Windows.Forms.dll
Assembly: 001ab888 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll] ClassLoader: 001ab968 SecurityDescriptor: 001ac178 Module Name 0429ad7c C:\windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll
Assembly: 001aafd8 [C:\windows\Microsoft.Net\assembly\GAC_32\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll] ClassLoader: 001ab090 SecurityDescriptor: 001a9238 Module Name 04646840 C:\windows\Microsoft.Net\assembly\GAC_32\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll
Assembly: 001b0048 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll] ClassLoader: 001ab560 SecurityDescriptor: 001ab478 Module Name 046a8a88 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll
Assembly: 001bd580 [AcManager.Tools, Version=1.0.1.5773, Culture=neutral, PublicKeyToken=null] ClassLoader: 001bd638 SecurityDescriptor: 001bba00 Module Name 05386168 AcManager.Tools, Version=1.0.1.5773, Culture=neutral, PublicKeyToken=null
Assembly: 001d05c8 [FirstFloor.ModernUI, Version=1.0.6.0, Culture=neutral, PublicKeyToken=null] ClassLoader: 001d0680 SecurityDescriptor: 001d04e0 Module Name 0538a5dc FirstFloor.ModernUI, Version=1.0.6.0, Culture=neutral, PublicKeyToken=null
Assembly: 001d5720 [AcTools, Version=1.0.4.1217, Culture=neutral, PublicKeyToken=null] ClassLoader: 001d0d98 SecurityDescriptor: 001d0450 Module Name 0538e744 AcTools, Version=1.0.4.1217, Culture=neutral, PublicKeyToken=null
Assembly: 001d3a98 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework\v4.0_4.0.0.0__31bf3856ad364e35\PresentationFramework.dll] ClassLoader: 001d0e08 SecurityDescriptor: 001bd328 Module Name 06161a8c C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework\v4.0_4.0.0.0__31bf3856ad364e35\PresentationFramework.dll
Assembly: 001d2db8 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\WindowsBase\v4.0_4.0.0.0__31bf3856ad364e35\WindowsBase.dll] ClassLoader: 001d2e98 SecurityDescriptor: 001d2d08 Module Name 0616df88 C:\windows\Microsoft.Net\assembly\GAC_MSIL\WindowsBase\v4.0_4.0.0.0__31bf3856ad364e35\WindowsBase.dll
Assembly: 001d5fc0 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xaml\v4.0_4.0.0.0__b77a5c561934e089\System.Xaml.dll] ClassLoader: 001d60a0 SecurityDescriptor: 001d5f10 Module Name 067f22c4 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xaml\v4.0_4.0.0.0__b77a5c561934e089\System.Xaml.dll
Assembly: 001d87d0 [C:\windows\Microsoft.Net\assembly\GAC_32\PresentationCore\v4.0_4.0.0.0__31bf3856ad364e35\PresentationCore.dll] ClassLoader: 001d8888 SecurityDescriptor: 001d8f48 Module Name 067f63e4 C:\windows\Microsoft.Net\assembly\GAC_32\PresentationCore\v4.0_4.0.0.0__31bf3856ad364e35\PresentationCore.dll
Assembly: 001daa30 [AcManager.Internal, Version=1.0.1.152, Culture=neutral, PublicKeyToken=null] ClassLoader: 001daae8 SecurityDescriptor: 001da948 Module Name 068e6d18 AcManager.Internal, Version=1.0.1.152, Culture=neutral, PublicKeyToken=null
Assembly: 001e2948 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll] ClassLoader: 001e5580 SecurityDescriptor: 001e2860 Module Name 03a8de18 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll
Assembly: 001e70a0 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll] ClassLoader: 001e7180 SecurityDescriptor: 001dad38 Module Name 03a8f584 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll
Assembly: 001dbee0 [StringBasedFilter, Version=1.0.0.10, Culture=neutral, PublicKeyToken=null] ClassLoader: 001dbfc0 SecurityDescriptor: 001dbe58 Module Name 06adc6f0 StringBasedFilter, Version=1.0.0.10, Culture=neutral, PublicKeyToken=null
Assembly: 001dc8a8 [AcManager.Controls, Version=1.0.1.14186, Culture=neutral, PublicKeyToken=null] ClassLoader: 001dc960 SecurityDescriptor: 001ea088 Module Name 06adf718 AcManager.Controls, Version=1.0.1.14186, Culture=neutral, PublicKeyToken=null
Assembly: 001e6b20 [AcTools.GenericMods, Version=1.0.0.68, Culture=neutral, PublicKeyToken=null] ClassLoader: 001e7e40 SecurityDescriptor: 001e6a38 Module Name 09943e54 AcTools.GenericMods, Version=1.0.0.68, Culture=neutral, PublicKeyToken=null
Assembly: 001e7d80 [AcTools.AcdEncryption, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null] ClassLoader: 001eaa38 SecurityDescriptor: 001e68c0 Module Name 099469e8 AcTools.AcdEncryption, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Assembly: 001eaff0 [Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null] ClassLoader: 001e87c0 SecurityDescriptor: 001e8738 Module Name 09947c7c Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null
Assembly: 001ed4d8 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll] ClassLoader: 001ed5b8 SecurityDescriptor: 001ed718 Module Name 06bc3108 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll
Assembly: 001ebe18 [AcTools.Render, Version=1.0.0.9196, Culture=neutral, PublicKeyToken=null] ClassLoader: 001ebef8 SecurityDescriptor: 001eca58 Module Name 06ca5868 AcTools.Render, Version=1.0.0.9196, Culture=neutral, PublicKeyToken=null
Assembly: 001ee780 [AcTools.LapTimes, Version=1.0.0.66, Culture=neutral, PublicKeyToken=null] ClassLoader: 001eb900 SecurityDescriptor: 001ee6f8 Module Name 06bb19f0 AcTools.LapTimes, Version=1.0.0.66, Culture=neutral, PublicKeyToken=null
Assembly: 001f3dc8 [AcManager.AcSound, Version=1.0.0.24, Culture=neutral, PublicKeyToken=null] ClassLoader: 001f3e80 SecurityDescriptor: 001ec3c8 Module Name 06bb2e40 AcManager.AcSound, Version=1.0.0.24, Culture=neutral, PublicKeyToken=null
Assembly: 001f57f8 [AcTools.NeuralTyres, Version=1.0.0.123, Culture=neutral, PublicKeyToken=null] ClassLoader: 001f58d8 SecurityDescriptor: 001f5770 Module Name 06bb3c88 AcTools.NeuralTyres, Version=1.0.0.123, Culture=neutral, PublicKeyToken=null
Assembly: 001f63f0 [AcTools.WheelAngles, Version=1.0.0.96, Culture=neutral, PublicKeyToken=null] ClassLoader: 001f64d0 SecurityDescriptor: 001f7870 Module Name 06bbf134 AcTools.WheelAngles, Version=1.0.0.96, Culture=neutral, PublicKeyToken=null
Assembly: 001f6f58 [AcManager.ContentRepair, Version=1.0.1.1421, Culture=neutral, PublicKeyToken=null] ClassLoader: 001f7010 SecurityDescriptor: 001f6e70 Module Name 06bbfb7c AcManager.ContentRepair, Version=1.0.1.1421, Culture=neutral, PublicKeyToken=null
Assembly: 001f6a08 [AcManager.DiscordRpc, Version=1.0.0.86, Culture=neutral, PublicKeyToken=null] ClassLoader: 001f96e0 SecurityDescriptor: 001f6980 Module Name 09cf3a74 AcManager.DiscordRpc, Version=1.0.0.86, Culture=neutral, PublicKeyToken=null
Assembly: 001fe360 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\UIAutomationTypes\v4.0_4.0.0.0__31bf3856ad364e35\UIAutomationTypes.dll] ClassLoader: 001fe688 SecurityDescriptor: 001ff310 Module Name 09cbdd68 C:\windows\Microsoft.Net\assembly\GAC_MSIL\UIAutomationTypes\v4.0_4.0.0.0__31bf3856ad364e35\UIAutomationTypes.dll
Assembly: 0021d878 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework.classic\v4.0_4.0.0.0__31bf3856ad364e35\PresentationFramework.classic.dll] ClassLoader: 00204f58 SecurityDescriptor: 002119a8 Module Name 07076354 C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework.classic\v4.0_4.0.0.0__31bf3856ad364e35\PresentationFramework.classic.dll
Assembly: 00218680 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemXml\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemXml.dll] ClassLoader: 00218958 SecurityDescriptor: 0021e368 Module Name 0715dbc0 C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemXml\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemXml.dll
Assembly: 10086810 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Numerics\v4.0_4.0.0.0__b77a5c561934e089\System.Numerics.dll] ClassLoader: 100868f0 SecurityDescriptor: 10086af0 Module Name 07531320 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Numerics\v4.0_4.0.0.0__b77a5c561934e089\System.Numerics.dll
Assembly: 1008c190 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll] ClassLoader: 1008c248 SecurityDescriptor: 10091148 Module Name 07537c9c C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll
Assembly: 10092d30 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll] ClassLoader: 10092e10 SecurityDescriptor: 100924a0 Module Name 0753cd08 C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll
Assembly: 100941c0 [C:\windows\Microsoft.Net\assembly\GAC_32\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll] ClassLoader: 10093840 SecurityDescriptor: 10092fa0 Module Name 0753d654 C:\windows\Microsoft.Net\assembly\GAC_32\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll
Assembly: 100999c8 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.IO.Compression\v4.0_4.0.0.0__b77a5c561934e089\System.IO.Compression.dll] ClassLoader: 100986f0 SecurityDescriptor: 10097668 Module Name 0772d56c C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.IO.Compression\v4.0_4.0.0.0__b77a5c561934e089\System.IO.Compression.dll
Assembly: 100beb30 [Unosquare.Labs.EmbedIO, Version=1.0.17.34736, Culture=neutral, PublicKeyToken=null] ClassLoader: 001b0cc8 SecurityDescriptor: 00211288 Module Name 0799ce08 Unosquare.Labs.EmbedIO, Version=1.0.17.34736, Culture=neutral, PublicKeyToken=null
Assembly: 100be538 [C:\users\focht\Temp\Costura\3F0254227540036A5DF3BEAD406573F3\32\slimdx.dll] ClassLoader: 100abac0 SecurityDescriptor: 001ed2d0 Module Name 0799ddbc C:\users\focht\Temp\Costura\3F0254227540036A5DF3BEAD406573F3\32\slimdx.dll
Assembly: 100c4518 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\WindowsFormsIntegration\v4.0_4.0.0.0__31bf3856ad364e35\WindowsFormsIntegration.dll] ClassLoader: 100c51e0 SecurityDescriptor: 100c61e0 Module Name 082da2fc C:\windows\Microsoft.Net\assembly\GAC_MSIL\WindowsFormsIntegration\v4.0_4.0.0.0__31bf3856ad364e35\WindowsFormsIntegration.dll
Assembly: 10265470 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemXmlLinq\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemXmlLinq.dll] ClassLoader: 10272c48 SecurityDescriptor: 10237798 Module Name 2728a6a0 C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemXmlLinq\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemXmlLinq.dll
Assembly: 10298668 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\UIAutomationProvider\v4.0_4.0.0.0__31bf3856ad364e35\UIAutomationProvider.dll] ClassLoader: 102985a8 SecurityDescriptor: 10295890 Module Name 272f1e20 C:\windows\Microsoft.Net\assembly\GAC_MSIL\UIAutomationProvider\v4.0_4.0.0.0__31bf3856ad364e35\UIAutomationProvider.dll
Assembly: 101dd710 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemData\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemData.dll] ClassLoader: 10239a60 SecurityDescriptor: 101aacf8 Module Name 2734e26c C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemData\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemData.dll
Assembly: 10096098 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemCore\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemCore.dll] ClassLoader: 001ff098 SecurityDescriptor: 100c1468 Module Name 27e92c1c C:\windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemCore\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemCore.dll
Assembly: 1026e550 [OxyPlot.Wpf, Version=2014.1.546.0, Culture=neutral] ClassLoader: 100ab8a0 SecurityDescriptor: 100c31c0 Module Name 27f2f19c OxyPlot.Wpf, Version=2014.1.546.0, Culture=neutral
Assembly: 102a4c48 [OxyPlot, Version=2014.1.546.0, Culture=neutral] ClassLoader: 100994b8 SecurityDescriptor: 100efeb8 Module Name 090a1460 OxyPlot, Version=2014.1.546.0, Culture=neutral
Assembly: 101be038 [MoonSharp.Interpreter, Version=2.0.0.0, Culture=neutral] ClassLoader: 101be0f0 SecurityDescriptor: 102f5888 Module Name 091c1548 MoonSharp.Interpreter, Version=2.0.0.0, Culture=neutral
Assembly: 103833e8 [SmartThreadPool, Version=2.2.3.0, Culture=neutral] ClassLoader: 101ba6b0 SecurityDescriptor: 102ca870 Module Name 2807bd18 SmartThreadPool, Version=2.2.3.0, Culture=neutral
Assembly: 10383ec0 [C:\windows\Microsoft.Net\assembly\GAC_MSIL\Accessibility\v4.0_4.0.0.0__b03f5f7f11d50a3a\Accessibility.dll] ClassLoader: 10136d58 SecurityDescriptor: 10148468 Module Name 0a468b24 C:\windows\Microsoft.Net\assembly\GAC_MSIL\Accessibility\v4.0_4.0.0.0__b03f5f7f11d50a3a\Accessibility.dll --- snip ---
--- snip --- $ 0:000> !DumpModule -mt 0538a5dc Name: FirstFloor.ModernUI, Version=1.0.6.0, Culture=neutral, PublicKeyToken=null Attributes: PEFile Assembly: 001d05c8 LoaderHeap: 00000000 TypeDefToMethodTableMap: 05c542c8 TypeRefToMethodTableMap: 05c54f54 MethodDefToDescMap: 05c55a44 FieldDefToDescMap: 05c5ad18 MemberRefToDescMap: 00000000 FileReferencesMap: 05c5d9ec AssemblyReferencesMap: 05c5d9f0 MetaData start address: 05ffb9c0 (458196 bytes)
Types defined in this module
MT TypeDef Name ------------------------------------------------------------------------------ 08d35114 0x02000004 <>f__AnonymousType2`2 08d35550 0x02000005 <>f__AnonymousType3`2 0a13b49c 0x02000006 XamlGeneratedNamespace.GeneratedInternalTypeHelper 09947254 0x02000007 FirstFloor.ModernUI.ActionExtension 071581b4 0x02000008 FirstFloor.ModernUI.BetterListCollectionView ... 06bbb4b8 0x02000087 FirstFloor.ModernUI.Windows.Controls.BetterImage ... --- snip ---
There are various ways to get the actual .NET assembly:
* extract it from main assembly .NET resources.
It's actually embedded as .compressed stream -> .NET DeflateStream class. Since this is a raw stream one needs to trick 'gzip' by prepending gzip magic number and compress method (printf "\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x00" | cat - costura.firstfloor.modernui.dll.compressed | gzip -dc > costura.firstfloor.modernui.dll)
* with assembly load address known -> '.writemem <filename> <range>' in 'windbg'
The third-party managed code that calls into WPF 'System.Windows.Media.PixelFormat.get_Masks()':
--- snip --- protected virtual unsafe bool FindCropArea(BitmapSource b, out int left, out int top, out int right, out int bottom) { if (b.Format.Masks.Count != 4) { left = top = right = bottom = 0; return true; } int pixelWidth = b.PixelWidth; int pixelHeight = b.PixelHeight; int stride = (pixelWidth * b.Format.BitsPerPixel + 7) / 8; byte[] numArray1 = new byte[pixelHeight * stride]; b.CopyPixels((Array) numArray1, stride, 0); IList<byte> mask = b.Format.Masks.ElementAtOrDefault<PixelFormatChannelMask>(0).Mask; if (mask == null) { left = top = right = bottom = 0; return true; } uint uint32 = BitConverter.ToUInt32(mask.Reverse<byte>().ToArray<byte>(), 0); left = pixelWidth; top = pixelHeight; bottom = right = 0; byte[] numArray2; uint* numPtr = (numArray2 = numArray1) == null || numArray2.Length == 0 ? (uint*) null : (uint*) &numArray2[0]; int num = 0; for (int index1 = 0; index1 < pixelHeight; ++index1) { for (int index2 = 0; index2 < pixelWidth; ++index2) { if (((int) numPtr[num++] & (int) uint32) != 0) { if (index2 < left) left = index2; if (index1 < top) top = index1; if (index2 > right) right = index2; if (index1 > bottom) bottom = index1; } } } numArray2 = (byte[]) null; return false; } --- snip ---
As OP already mentioned, all three proxy functions are imported/used in 'System.Windows.Media.PixelFormat' class hence need to be implemented:
https://msdn.microsoft.com/en-us/library/system.windows.media.pixelformat_pr...
* BitsPerPixel (property) * Masks (property)
--- snip --- ... [DllImport("WindowsCodecs.dll", EntryPoint = "IWICPixelFormatInfo_GetBitsPerPixel_Proxy")] internal static extern int GetBitsPerPixel(IntPtr pIPixelFormatInfo, out uint uiBitsPerPixel);
[DllImport("WindowsCodecs.dll", EntryPoint = "IWICPixelFormatInfo_GetChannelCount_Proxy")] internal static extern int GetChannelCount(IntPtr pIPixelFormatInfo, out uint uiChannelCount);
[DllImport("WindowsCodecs.dll", EntryPoint = "IWICPixelFormatInfo_GetChannelMask_Proxy")] internal static extern unsafe int GetChannelMask(IntPtr pIPixelFormatInfo, uint uiChannelIndex, uint cbMaskBuffer, byte* pbMaskBuffer, out uint cbActual); ... --- snip ---
I've refined the summary to include these methods (unless you want to split these up into more tickets).
$ sha1sum Content\ Manager\ (0.8.1784.34481).zip 133e798e6592f4f9b39b188ce1e1a41f6776d993 Content Manager (0.8.1784.34481).zip
$ du -sh Content\ Manager\ (0.8.1784.34481).zip 7.0M Content Manager (0.8.1784.34481).zip
$ wine --version wine-3.13
Regards
https://bugs.winehq.org/show_bug.cgi?id=45588
jens jp7677@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|https://acstuff.ru/app/ |https://assettocorsa.club/c | |ontent-manager.html
https://bugs.winehq.org/show_bug.cgi?id=45588
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello folks,
patch here:
https://source.winehq.org/patches/data/152040 https://www.winehq.org/pipermail/wine-devel/2018-September/thread.html#13298...
Regards
https://bugs.winehq.org/show_bug.cgi?id=45588
zzzzzyzz@hacari.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zzzzzyzz@hacari.org
https://bugs.winehq.org/show_bug.cgi?id=45588
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |06495200af280197cd71f3d1714 | |673b49335f50e Resolution|--- |FIXED Status|NEW |RESOLVED
--- Comment #7 from Nikolay Sivov bunglehead@gmail.com --- Marking fixed, 06495200af280197cd71f3d1714673b49335f50e.
https://bugs.winehq.org/show_bug.cgi?id=45588
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #8 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.18.
https://bugs.winehq.org/show_bug.cgi?id=45588
--- Comment #9 from jens jp7677@gmail.com --- Wine 3.18 indeed fixes the initial issue with Assetto Corsa Content Manager, thanks a lot everybody!
https://bugs.winehq.org/show_bug.cgi?id=45588
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |3.0.x
https://bugs.winehq.org/show_bug.cgi?id=45588
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|3.0.x |---
--- Comment #10 from Michael Stefaniuc mstefani@winehq.org --- Removing the 3.0.x milestone from bug fixes included in 3.0.5.