none
WPF CLR20r3 Error on display

    Question

  • Hi,

    I am having a problem with a developed WPF client application.

    The application runs fine within the develoment environment and when installed on the development machine.

    However when installed on a client machine (32 bit windows 7 with a touch screen and a single click installation) after a certain operation is performed I will get the following error:

     

    <MyApp> has stopped working:

    Problem signature:

    Problem Event Name: CLR20r3

    Problem Signature 01: [MyApplication]

    Problem Signature 02: 1.0.0.0

    Problem Signature 03: 4c19e534

    Problem Signature 04: WindowsBase

    Problem Signature 05: 4.0.0.0

    Problem Signature 06: 4ba1f805

    Problem Signature 07: 3a

    Problem Signature 08: 1b

    Problem Signature 09: FatalError

    OS Version: 6.1.7600.2.0.0.256.48

    Locale ID: 1033

    Additional Information 1: 762f

    Additional Information 2: 762fe709f772dce2729e728bd7ec3aea

    Additional Information 3: 59f8

    Additional Information 4: 59f81ce878a3e5da74a04c290a1216f4

    Read our privacy statement online:

    http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

    If the online privacy statement is not available, please read our privacy statement offline:

    C:\Windows\system32\en-US\erofflps.txt

     

    This is followed by 2 errors being dumped into the application logs (pasted below)

    I have narrowed the problem down to a simple <ListView /> element. The error is not thrown when the listview is created but when it is displayed:

    i.e. when i create the list view it is placed on an un-selected tab and the error is not thrown until the tab is selected.

    The <ListView /> is as follows:

          <ListView Name="ItemDisplay" Grid.Row="3" ItemsSource="{Binding}">
            <ListView.View>
              <GridView>
                <GridViewColumn Width="300" Header="Item Description" DisplayMemberBinding="{Binding Path=Description}" />
                <GridViewColumn Width="60" Header="Quantity" DisplayMemberBinding="{Binding Path=Quantity}" />
                <GridViewColumn Width="75" Header="Total Cost" DisplayMemberBinding="{Binding Path=TotalCost}" />
                <GridViewColumn Width="85" Header="Refund Amount" DisplayMemberBinding="{Binding Path=RefundAmount}" />
              </GridView>
            </ListView.View>
          </ListView>

    (simple I'm sure you will agree)

    In previous iterations of the listview I had a far more elegant style and the error would not be thrown until the listview was scrolled to within 3 elements of the bottom of the list.

    The app was built using .Net 4 and I have used the .Net version suggested by the installer (setup.exe) on the client

    Finally i am sure it is worth noting that the application is NOT throwing any exceptions which can be caught within the code or with an

    AppDomain.CurrentDomain.UnhandledException

    delegate.

    I am completely lost on this one. Any help would be greatly appreciated.

    Shane

     

     

    The 2 logs mentioned are as follows:

    Logged Error 1 ->

    Log Name:      Application
    Source:        .NET Runtime
    Date:          6/17/2010 10:08:39 AM
    Event ID:      1025
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      Owner-PC
    Description:
    Application: [MyApplication]
    Framework Version: v4.0.30319
    Description: The application requested process termination through System.Environment.FailFast(string message).
    Message: Unrecoverable system error.
    Stack:
       at System.Environment.FailFast(System.String)
       at MS.Internal.Invariant.FailFast(System.String, System.String)
       at MS.Internal.Invariant.Assert(Boolean)
       at System.Windows.Automation.Peers.GridViewItemAutomationPeer..ctor(System.Object, System.Windows.Automation.Peers.ListViewAutomationPeer)
       at System.Windows.Automation.Peers.GridViewAutomationPeer.System.Windows.Automation.Peers.IViewAutomationPeer.CreateItemAutomationPeer(System.Object)
       at System.Windows.Automation.Peers.ListViewAutomationPeer.CreateItemAutomationPeer(System.Object)
       at System.Windows.Automation.Peers.ItemsControlAutomationPeer.GetChildrenCore()
       at System.Windows.Automation.Peers.ListViewAutomationPeer.GetChildrenCore()
       at System.Windows.Automation.Peers.AutomationPeer.EnsureChildren()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateChildrenInternal(Int32)
       at System.Windows.Automation.Peers.ItemsControlAutomationPeer.UpdateChildren()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.ContextLayoutManager.fireAutomationEvents()
       at System.Windows.ContextLayoutManager.UpdateLayout()
       at System.Windows.ContextLayoutManager.UpdateLayoutCallback(System.Object)
       at System.Windows.Media.MediaContext+InvokeOnRenderCallback.DoWork()
       at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
       at System.Windows.Media.MediaContext.RenderMessageHandlerCore(System.Object)
       at System.Windows.Media.MediaContext.RenderMessageHandler(System.Object)
       at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
       at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
       at System.Windows.Threading.DispatcherOperation.InvokeImpl()
       at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object)
       at System.Threading.ExecutionContext.runTryCode(System.Object)
       at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode, CleanupCode, System.Object)
       at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
       at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
       at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
       at System.Windows.Threading.DispatcherOperation.Invoke()
       at System.Windows.Threading.Dispatcher.ProcessQueue()
       at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
       at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
       at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
       at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
       at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
       at System.Windows.Threading.Dispatcher.InvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
       at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
       at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
       at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
       at System.Windows.Threading.Dispatcher.PushFrame(System.Windows.Threading.DispatcherFrame)
       at System.Windows.Threading.Dispatcher.Run()
       at System.Windows.Application.RunDispatcher(System.Object)
       at System.Windows.Application.RunInternal(System.Windows.Window)
       at System.Windows.Application.Run(System.Windows.Window)
       at [MyApplication].App.Main()
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event ">
      <System>
        <Provider Name=".NET Runtime" />
        <EventID Qualifiers="0">1025</EventID>
        <Level>2</Level>
        <Task>0</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2010-06-17T09:08:39.000000000Z" />
        <EventRecordID>1109</EventRecordID>
        <Channel>Application</Channel>
        <Computer>Owner-PC</Computer>
        <Security />
      </System>
      <EventData>
        <Data>Application: [MyApplication]
    Framework Version: v4.0.30319
    Description: The application requested process termination through System.Environment.FailFast(string message).
    Message: Unrecoverable system error.
    Stack:
       at System.Environment.FailFast(System.String)
       at MS.Internal.Invariant.FailFast(System.String, System.String)
       at MS.Internal.Invariant.Assert(Boolean)
       at System.Windows.Automation.Peers.GridViewItemAutomationPeer..ctor(System.Object, System.Windows.Automation.Peers.ListViewAutomationPeer)
       at System.Windows.Automation.Peers.GridViewAutomationPeer.System.Windows.Automation.Peers.IViewAutomationPeer.CreateItemAutomationPeer(System.Object)
       at System.Windows.Automation.Peers.ListViewAutomationPeer.CreateItemAutomationPeer(System.Object)
       at System.Windows.Automation.Peers.ItemsControlAutomationPeer.GetChildrenCore()
       at System.Windows.Automation.Peers.ListViewAutomationPeer.GetChildrenCore()
       at System.Windows.Automation.Peers.AutomationPeer.EnsureChildren()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateChildrenInternal(Int32)
       at System.Windows.Automation.Peers.ItemsControlAutomationPeer.UpdateChildren()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.Automation.Peers.AutomationPeer.UpdateSubtree()
       at System.Windows.ContextLayoutManager.fireAutomationEvents()
       at System.Windows.ContextLayoutManager.UpdateLayout()
       at System.Windows.ContextLayoutManager.UpdateLayoutCallback(System.Object)
       at System.Windows.Media.MediaContext+InvokeOnRenderCallback.DoWork()
       at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
       at System.Windows.Media.MediaContext.RenderMessageHandlerCore(System.Object)
       at System.Windows.Media.MediaContext.RenderMessageHandler(System.Object)
       at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
       at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
       at System.Windows.Threading.DispatcherOperation.InvokeImpl()
       at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object)
       at System.Threading.ExecutionContext.runTryCode(System.Object)
       at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode, CleanupCode, System.Object)
       at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
       at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
       at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
       at System.Windows.Threading.DispatcherOperation.Invoke()
       at System.Windows.Threading.Dispatcher.ProcessQueue()
       at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
       at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
       at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
       at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
       at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
       at System.Windows.Threading.Dispatcher.InvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
       at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
       at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
       at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
       at System.Windows.Threading.Dispatcher.PushFrame(System.Windows.Threading.DispatcherFrame)
       at System.Windows.Threading.Dispatcher.Run()
       at System.Windows.Application.RunDispatcher(System.Object)
       at System.Windows.Application.RunInternal(System.Windows.Window)
       at System.Windows.Application.Run(System.Windows.Window)
       at [MyApplication].App.Main()
    </Data>
      </EventData>
    </Event>
     

    Logged Error 2 ->

    Log Name:      Application
    Source:        Application Error
    Date:          6/17/2010 10:08:40 AM
    Event ID:      1000
    Task Category: (100)
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      Owner-PC
    Description:
    Faulting application name: [MyApplication], version: 1.0.0.0, time stamp: 0x4c19e534
    Faulting module name: WindowsBase.ni.dll, version: 4.0.30319.1, time stamp: 0x4ba1f805
    Exception code: 0x80131623
    Fault offset: 0x00209ddd
    Faulting process id: 0xb8c
    Faulting application start time: 0x01cb0dfc8c02dfbf
    Faulting application path: C:\Program Files\[MyOrganisation]\[ApplicationFolder]\[MyApplication]
    Faulting module path: C:\Windows\assembly\NativeImages_v4.0.30319_32\WindowsBase\d17606e813f01376bd0def23726ecc62\WindowsBase.ni.dll
    Report Id: eb50b717-79ef-11df-b945-0015831e5611
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event ">
      <System>
        <Provider Name="Application Error" />
        <EventID Qualifiers="0">1000</EventID>
        <Level>2</Level>
        <Task>100</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2010-06-17T09:08:40.000000000Z" />
        <EventRecordID>1110</EventRecordID>
        <Channel>Application</Channel>
        <Computer>Owner-PC</Computer>
        <Security />
      </System>
      <EventData>
        <Data>[MyApplication]</Data>
        <Data>1.0.0.0</Data>
        <Data>4c19e534</Data>
        <Data>WindowsBase.ni.dll</Data>
        <Data>4.0.30319.1</Data>
        <Data>4ba1f805</Data>
        <Data>80131623</Data>
        <Data>00209ddd</Data>
        <Data>b8c</Data>
        <Data>01cb0dfc8c02dfbf</Data>
        <Data>C:\Program Files\[MyOrganisation]\[ApplicationFolder]\[MyApplication]</Data>
        <Data>C:\Windows\assembly\NativeImages_v4.0.30319_32\WindowsBase\d17606e813f01376bd0def23726ecc62\WindowsBase.ni.dll</Data>
        <Data>eb50b717-79ef-11df-b945-0015831e5611</Data>
      </EventData>
    </Event>

     

     

    Thursday, June 17, 2010 10:20 AM

Answers

  • Sorted!!!

     

    There was a null element at the end of the ObservableCollection I was using as the data context for the listview.

    • Marked as answer by ProgShane Monday, June 21, 2010 10:42 AM
    Monday, June 21, 2010 10:41 AM