FIX: A .NET Framework 3.0-based WPF application may crash when you tap a menu item on a shortcut menu

Applies to: .NET Framework 3.5 Service Pack 1


Consider the following scenario:
  • You run a .NET Framework 3.0-based Windows Presentation Foundation (WPF) application on a multi-touch device.
  • You perform a touch gesture on a control of the WPF application to open a shortcut menu.

    Note A shortcut menu can usually be opened by pressing the right mouse button on a control.
  • You tap a menu item on the shortcut menu.
In this scenario, a System.ArgumentNullException exception may occur, and then the WPF application crashes.


This issue occurs because the PopupControlService.OnPostProcessInput method in the WPF application refers to a property that has a null value.


To resolve this issue, apply the hotfix package that is described in the following Microsoft Knowledge Base article:

2667241 An update rollup is available for Windows Presentation Foundation (WPF) for Microsoft .NET Framework 3.5


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

More Information

Additional file information

Additional file information for all supported x86-based versions of Windows 7
File nameX86_presentationcore_31bf3856ad364e35_6.1.7600.20904_none_ace68dc20a25779b.manifest
File versionNot Applicable
File size4,445
Date (UTC)18-Feb-2011
Time (UTC) 06:26
File nameX86_wpf-presentationframework_31bf3856ad364e35_6.1.7600.20904_none_6f3bd788d02795c8.manifest
File versionNot Applicable
File size2,189
Date (UTC)18-Feb- 2011
Time (UTC)06:27
File nameX86_wpf- presentationhostdll_31bf3856ad364e35_6.1.7600.20904_none_70c0e8bb9a3069e6.manifest
File versionNot Applicable
File size2,993
Date (UTC)18-Feb-2011
Time (UTC)06:28
File nameX86_wpf-windowsbase_31bf3856ad364e35_6.1.7600.20904_none_58228866c1f74d9e.manifest
File versionNot Applicable
File size2,149
Date (UTC)18-Feb-2011
Time (UTC) 06:25
Additional file information for all supported x64-based versions of Windows 7 and of Windows Server 2008 R2
File nameAmd64_presentationcore_31bf3856ad364e35_6.1.7600.20904_none_09052945c282e8d1.manifest
File versionNot Applicable
File size4,459
Date (UTC)18-Feb-2011
Time (UTC) 07:27
File nameAmd64_wpf- presentationframework_31bf3856ad364e35_6.1.7600.20904_none_cb5a730c888506fe.manifest
File versionNot Applicable
File size3,600
Date (UTC)18-Feb-2011
Time (UTC)07:30
File nameAmd64_wpf-presentationhostdll_31bf3856ad364e35_6.1.7600.20904_none_ccdf843f528ddb1c.manifest
File versionNot Applicable
File size3,003
Date (UTC)18-Feb-2011
Time (UTC) 07:31
File nameAmd64_wpf-windowsbase_31bf3856ad364e35_6.1.7600.20904_none_b44123ea7a54bed4.manifest
File versionNot Applicable
File size5,426
Date (UTC)18-Feb- 2011
Time (UTC)07:36

  Call stack information

PresentationCore.dll!System.Windows.PresentationSource.CriticalFromVisual(System.Windows.DependencyObject v, bool enable2DTo3DTransition) Line 614           C# 
PresentationFramework.dll!System.Windows.Controls.PopupControlService.OnPostProcessInput(object sender, System.Windows.Input.ProcessInputEventArgs e) Line 82 + 0x45 bytes C#
PresentationCore.dll!System.Windows.Input.InputManager.ProcessStagingArea() Line 833 + 0xd bytes C#
PresentationCore.dll!System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs input) Line 562 + 0x8 bytes C#
PresentationCore.dll!System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport inputReport) Line 125 + 0x16 bytes C#
PresentationCore.dll!System.Windows.Interop.HwndMouseInputProvider.ReportInput(System.IntPtr hwnd, System.Windows.Input.InputMode mode, int timestamp, System.Windows.Input.RawMouseActions actions, int x, int y, int wheel) Line 1359 C#
PresentationCore.dll!System.Windows.Interop.HwndMouseInputProvider.FilterMessage(System.IntPtr hwnd = 2560340, int msg = 512, System.IntPtr wParam = 0, System.IntPtr lParam = 100, ref bool handled = false) Line 490 + 0x37 bytes C#