wpf: App crashes when hovering cursor over it

Description

I am working on a WPF Bloomberg App in Visual Studio 2019 under .NET Framework 4.8 with Windows 10, and it works fine.

However, after having upgraded to .NET Framework 4.8.1, I am experiencing a crash. The app opens fine, but when I hover the cursor over it, it crashes.

I have pinpointed the .NET Framework 4.8.1 installation at Windows Update KB5011048, that takes me to .NET Framework version 4.8.09037. If I uninstall KB5011048, it takes me back to .NET Framework 4.8 version 4.8.04084, and my app runs fine again.

What concerns me is that .NET Framework 4.8.1 comes installed in Windows 11 by default, and my app is being used by many users across the globe. I tried the same experiment on a Windows 11 machine, and confirmed the bug still happens.

I have the app’s local log, from start to crash. Let me know if necessary please. Thanks for your help!

Reproduction Steps

  1. Install .NET Framework 4.8.1
  2. Run/Debug the app within Visual Studio 2019
  3. Hover the mouse over the app
  4. Crash happens

Expected behavior

App does not crash when hovering the cursor over it.

Actual behavior

App crashes when hovering the cursor over it.

Regression?

It works in .NET Framework 4.8

Known Workarounds

  • Windows 10: Go back to .NET Framework 4.8 by uninstalling Windows Update KB5011048
  • Windows 11: No workaround

Impact

Thousands of users rely on my app for daily trading across the globe.

Configuration

  • Crash occurs on .NET Framework 4.8.1
  • Occurs in Windows 10 if .NET Framework 4.8.1 is installed, and also for all Windows 11 users.
  • My current processor architecture is x64
  • I have tried on a native Windows 10 x64, and also virtualized with Parallels Windows 11 on ARM (MacBook M1 Pro)

Other information

Exception thrown when Debugging within Visual Studio:

System.TypeInitializationException
  HResult=0x80131534
  Message=The type initializer for 'Bloomberglp.AppPortalApi.Desktop.AppPortalPopupControlService' threw an exception.
  Source=Bloomberglp.AppPortalApi
  StackTrace:
   at Bloomberglp.AppPortalApi.Desktop.AppPortalPopupControlService.OnPostProcessInput(Object sender, ProcessInputEventArgs e)

Inner Exception 1:
TypeLoadException: Could not load type 'System.Windows.Controls.ToolTip+ToolTipTrigger' from assembly 'PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.

This is the Stack Trace I see from my local app’s log:

06-15 15:23:03.762 [INFO]%13%10AppDomain.BaseDirectory: C:\blp\Wintrv\Smartclient\%13%10AppDomain.ConfigurationFile: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0\g_103d70ddcde14f508c935a698d8c08fa.Shim.dll.config%13%10AppDomain.PrivateBinPath: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0;DevPAC\Bloomberg.Codec\1.3.0.2__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi.XmlSerializers\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi.XmlSerializers\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.Blpapi\3.9.6.1__ec3efa8c033c2bc5;DevPAC\Bloomberglp.TerminalApiEx\2.4.1.0__51f5d93763bdb58e;DevPAC\System.Data.SQLite\1.0.85.0__db937bc2d44ff139;DevPAC\System.Net.Http\2.2.29.0__b03f5f7f11d50a3a;DevPAC\System.Windows.Controls.DataVisualization.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Input.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Layout.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit.Extended\1.5.2.0__51f5d93763bdb58e%13%10AppDomain.FriendlyName: Dedicated: 801315e8-f6c8-4b3b-a17d-2fc37abe2cd6 #63835064 (dev)%13%10Process/Thread: 9140/(13:15860) WPF Dispatcher Thread%13%10blpsmarthost.exe Error: 0 :  [LCL:1686856983] [GMT:1686856983]
06-15 15:23:03.763 [INFO]%13%10AppDomain.BaseDirectory: C:\blp\Wintrv\Smartclient\%13%10AppDomain.ConfigurationFile: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0\g_103d70ddcde14f508c935a698d8c08fa.Shim.dll.config%13%10AppDomain.PrivateBinPath: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0;DevPAC\Bloomberg.Codec\1.3.0.2__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi.XmlSerializers\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi.XmlSerializers\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.Blpapi\3.9.6.1__ec3efa8c033c2bc5;DevPAC\Bloomberglp.TerminalApiEx\2.4.1.0__51f5d93763bdb58e;DevPAC\System.Data.SQLite\1.0.85.0__db937bc2d44ff139;DevPAC\System.Net.Http\2.2.29.0__b03f5f7f11d50a3a;DevPAC\System.Windows.Controls.DataVisualization.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Input.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Layout.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit.Extended\1.5.2.0__51f5d93763bdb58e%13%10AppDomain.FriendlyName: Dedicated: 801315e8-f6c8-4b3b-a17d-2fc37abe2cd6 #63835064 (dev)%13%10Process/Thread: 9140/(13:15860) WPF Dispatcher Thread%13%10Proxy emitter error: callee is null [LCL:1686856983] [GMT:1686856983]
06-15 15:23:03.799 [INFO]%13%10AppDomain.BaseDirectory: C:\blp\Wintrv\Smartclient\%13%10AppDomain.ConfigurationFile: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0\g_103d70ddcde14f508c935a698d8c08fa.Shim.dll.config%13%10AppDomain.PrivateBinPath: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0;DevPAC\Bloomberg.Codec\1.3.0.2__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi.XmlSerializers\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi.XmlSerializers\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.Blpapi\3.9.6.1__ec3efa8c033c2bc5;DevPAC\Bloomberglp.TerminalApiEx\2.4.1.0__51f5d93763bdb58e;DevPAC\System.Data.SQLite\1.0.85.0__db937bc2d44ff139;DevPAC\System.Net.Http\2.2.29.0__b03f5f7f11d50a3a;DevPAC\System.Windows.Controls.DataVisualization.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Input.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Layout.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit.Extended\1.5.2.0__51f5d93763bdb58e%13%10AppDomain.FriendlyName: Dedicated: 801315e8-f6c8-4b3b-a17d-2fc37abe2cd6 #63835064 (dev)%13%10Process/Thread: 9140/(13:15860) WPF Dispatcher Thread%13%10PRINT_START 20230615-19:23:03.797: Unhandled exception occurred in BBG Root: %10The type initializer for 'Bloomberglp.AppPortalApi.Desktop.AppPortalPopupControlService' threw an exception. PRINT_END [LCL:1686856983] [GMT:1686856983]
06-15 15:23:03.810 [INFO]%13%10AppDomain.BaseDirectory: C:\blp\Wintrv\Smartclient\%13%10AppDomain.ConfigurationFile: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0\g_103d70ddcde14f508c935a698d8c08fa.Shim.dll.config%13%10AppDomain.PrivateBinPath: C:\blp\Wintrv\Smartclient\Sandbox\Orange\Applications\devapps\1f5ec9d6-a18a-4ff7-a36e-a2c2b3a05e25\0.0.0.0;DevPAC\Bloomberg.Codec\1.3.0.2__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortal.Netapi.XmlSerializers\1.3.8.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.AppPortalApi.XmlSerializers\1.5.0.0__51f5d93763bdb58e;DevPAC\Bloomberglp.Blpapi\3.9.6.1__ec3efa8c033c2bc5;DevPAC\Bloomberglp.TerminalApiEx\2.4.1.0__51f5d93763bdb58e;DevPAC\System.Data.SQLite\1.0.85.0__db937bc2d44ff139;DevPAC\System.Net.Http\2.2.29.0__b03f5f7f11d50a3a;DevPAC\System.Windows.Controls.DataVisualization.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Input.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\System.Windows.Controls.Layout.Toolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit\3.5.40128.4__51f5d93763bdb58e;DevPAC\WPFToolkit.Extended\1.5.2.0__51f5d93763bdb58e%13%10AppDomain.FriendlyName: Dedicated: 801315e8-f6c8-4b3b-a17d-2fc37abe2cd6 #63835064 (dev)%13%10Process/Thread: 9140/(13:15860) WPF Dispatcher Thread%13%10PRINT_START 20230615-19:23:03.810: BBG Root exception StackTrace: %10   at Bloomberglp.AppPortalApi.Desktop.AppPortalPopupControlService.get_Current()%13%10   at Bloomberglp.AppPortalApi.Desktop.AppPortalToolTipService.OnFindToolTip(Object sender, RoutedEventArgs e)%13%10   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)%13%10   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)%13%10   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)%13%10   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)%13%10   at System.Windows.Controls.PopupControlService.FindToolTipOwner(IInputElement element, TriggerAction triggerAction)%13%10   at System.Windows.Controls.PopupControlService.OnMouseMove(IInputElement directlyOver)%13%10   at System.Windows.Controls.PopupControlService.OnPostProcessInput(Object sender, ProcessInputEventArgs e)%13%10   at System.Windows.Input.InputManager.RaiseProcessInputEventHandlers(ProcessInputEventHandler postProcessInput, ProcessInputEventArgs processInputEventArgs)%13%10   at System.Windows.Input.InputManager.ProcessStagingArea()%13%10   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)%13%10   at System.Windows.Input.StylusWisp.WispLogic.SendDeferredMouseEvent(Boolean sendInput)%13%10   at System.Windows.Input.StylusWisp.WispLogic.PreProcessInput(Object sender, PreProcessInputEventArgs e)%13%10   at System.Windows.Input.InputManager.ProcessStagingArea()%13%10   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)%13%10   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)%13%10   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)%13%10   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)%13%10   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)%13%10   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)%13%10   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)%13%10   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)%13%10   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) PRINT_END [LCL:1686856983] [GMT:1686856983]

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 15 (7 by maintainers)

Most upvoted comments

@pchaurasia14 makes sense. I will pass this info to their engineers. Thanks.