The process was terminated due to an unhandled exception in InteropServices.SEHException

15,945

Faulting application path: I:\RPG\vblib\propane.exe

This is probably the most significant hint in the exception details. The exception code (0xc0000006) is a very low-level Windows error, STATUS_IN_PAGE_ERROR, "The required data was not placed into memory because of an I/O error". It occurs when the operating system needs to retrieve data from the paging file or a memory mapped file and the file cannot be read.

The shoe fits, the drive letter is unusual and typically used to map to a network share. .NET assemblies are loaded as memory mapped files, the metadata and MSIL in them are loaded from the file dynamically as required by the jitter to generate code for the methods in the assembly.

In other words, the network the customer uses isn't reliable enough. The program crashes when the network connection goes down. Nothing much you can do about it of course, other than strongly recommending the customer to use local installs of your app. ClickOnce is good for that.

Share:
15,945
ErocM
Author by

ErocM

Updated on June 23, 2022

Comments

  • ErocM
    ErocM almost 2 years

    I've searched for this but I cannot find anything specific for this error or how to troubleshoot it.

    We are getting this error intermittently on different computers in different locations in the code.

    Here is the errors:

    Computer 1:

    Application: propane.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.Runtime.InteropServices.SEHException
    Stack:
       at SSS.Base.FastTrans.PrintReceipt.MakeString()
       at SSS.Base.FastTrans.PrintReceipt.PrintIt()
       at SSS.Base.FastTrans.CCPayment.PrintReceipt()
       at SSS.Base.FastTrans.CCPayment.BottomPanelEnabled()
       at SSS.Base.FastTrans.CCPayment.btnContinue_Click(System.Object, System.EventArgs)
       at System.Windows.Forms.Control.OnClick(System.EventArgs)
       at System.Windows.Forms.Button.OnClick(System.EventArgs)
       at System.Windows.Forms.Button.OnMouseUp(System.Windows.Forms.MouseEventArgs)
       at System.Windows.Forms.Control.WmMouseUp(System.Windows.Forms.Message ByRef, System.Windows.Forms.MouseButtons, Int32)
       at System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.ButtonBase.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Button.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
       at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG ByRef)
       at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
       at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)
       at System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)
       at System.Windows.Forms.Application.RunDialog(System.Windows.Forms.Form)
       at System.Windows.Forms.Form.ShowDialog(System.Windows.Forms.IWin32Window)
       at SSS.Common.BaseScreen.DynamicallyLoadScreen(System.String, System.String, SSS.Common.BaseScreen, Boolean)
       at SSS.Common.BaseScreen.LoadNewScreen(ScreenOptions, SSS.Common.BaseScreen)
       at SSS.Base.CustomerInquiry.CmdPaymentClick(System.Object, System.EventArgs)
       at System.Windows.Forms.Control.OnClick(System.EventArgs)
       at System.Windows.Forms.Button.OnClick(System.EventArgs)
       at System.Windows.Forms.Button.OnMouseUp(System.Windows.Forms.MouseEventArgs)
       at System.Windows.Forms.Control.WmMouseUp(System.Windows.Forms.Message ByRef, System.Windows.Forms.MouseButtons, Int32)
       at System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.ButtonBase.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Button.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
       at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG ByRef)
       at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
       at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)
       at System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(System.String[])
       at Sss.My.MyApplication.Main(System.String[])
    

    Computer 2:

    Application: propane.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.Runtime.InteropServices.SEHException
    Stack:
       at SSSObjectLibrary.VerifySalesAndService.VerifySASLibrary(System.String)
       at SSS.Base.CustomerInquiry.CmdServiceOrderClick(System.Object, System.EventArgs)
       at System.Windows.Forms.Control.OnClick(System.EventArgs)
       at System.Windows.Forms.Button.OnClick(System.EventArgs)
       at System.Windows.Forms.Button.OnMouseUp(System.Windows.Forms.MouseEventArgs)
       at System.Windows.Forms.Control.WmMouseUp(System.Windows.Forms.Message ByRef, System.Windows.Forms.MouseButtons, Int32)
       at System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.ButtonBase.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Button.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
       at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG ByRef)
       at System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
       at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)
       at System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(System.String[])
       at Sss.My.MyApplication.Main(System.String[])
    

    This is being issued as a second message by both computers:

    Faulting application name: propane.exe, version: 1.0.0.0, time stamp: 0x51ffc85e
    Faulting module name: clr.dll, version: 4.0.30319.1008, time stamp: 0x517a1be7
    Exception code: 0xc0000006
    Fault offset: 0x0004a0c8
    Faulting process id: 0xe80
    Faulting application start time: 0x01cea9b048cb2d9d
    Faulting application path: I:\RPG\vblib\propane.exe
    Faulting module path: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
    Report Id: c4a07f4d-1631-11e3-a5f3-1078d270d332
    

    These are from 2 different computers at two different offices. How do I troubleshoot this? We have a wrapper that is 'suppose' to catch all unhandled errors in the application, and it hasn't missed anything at this point. That confuses me even more as to how it's getting by that catch all.

    Any suggestions?