Welcome Guest Search | Active Topics | Sign In | Register

Webbrowser, 15.2.82.0, intermittend crash on open Options
Bob Noordam
Posted: Monday, October 12, 2015 5:21:55 AM
Rank: Newbie
Groups: Member

Joined: 10/12/2015
Posts: 9
Hello,

Not so much a support request, because i simply rolled back - but FYI:

- Upgraded a large winforms application that embedds web funcationality through a mdi interface
- Everything worked fine previously with version 15.2.41.0, installed throught the full installer
- Upgraded to version 15.2.82.0 by removing the manual installer and using the nuget package.
- No direct need to upgrade to a newer version, just a matter doing as much as possible through nuget

Most of the mdi tabs containing a maximized webbrowser still open correct. Howver, about 10% of the open's result in the exception below. If this exception is thrown, subsquent windows open blank, and the application needs to be restarted to function again.

- Reverted back to 15.2.41.0, -> problem gone.


Code: C#
System.Reflection.TargetInvocationException was unhandled
  HResult=-2146232828
  Message=Het doel van een aanroep heeft een uitzondering veroorzaakt.
  Source=mscorlib
  StackTrace:
       bij System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
       bij System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
       bij System.Delegate.DynamicInvokeImpl(Object[] args)
       bij System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
       bij System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
       bij System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       bij System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
       bij System.Windows.Forms.Control.InvokeMarshaledCallbacks()
       bij System.Windows.Forms.Control.WndProc(Message& m)
       bij System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       bij System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
       bij System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
       bij System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       bij System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       bij Asterix.Program.Main() in c:\Library\src\Asterix.MASTER\Solution.Master-Release\Asterix.Winforms\Program.cs:regel 33
       bij System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
       bij System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData)
       bij Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone()
       bij System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       bij System.Threading.ThreadHelper.ThreadStart()
  InnerException: System.InvalidOperationException
       HResult=-2146233079
       Message=De bewerking is ongeldig vanwege de huidige staat van het object.
       Source=EO.Base
       StackTrace:
            bij EO.Internal.jm.a(String[] A_0, String A_1, String A_2, String A_3, String A_4)
            bij EO.Internal.aa0.a(String A_0, String A_1)
            bij EO.Internal.cr.a()
            bij EO.Internal.cr.b(Boolean A_0)
            bij EO.Internal.wz.p()
            bij EO.Internal.cr..ctor(WebView A_0)
            bij EO.WebBrowser.WebView.w()
            bij EO.WebBrowser.WebView.Create(IntPtr hWnd)
            bij EO.WebBrowser.WinForm.WebControl.a(Object A_0)
       InnerException:

Jeppe HS
Posted: Monday, October 12, 2015 8:31:38 AM
Rank: Advanced Member
Groups: Member

Joined: 1/5/2015
Posts: 60
I can confirm this.

I see the same error on occasion (not on Dutch), running 2015.2.82.0.

Something with object state, when Show is called on the sorrounding Window.

eo_support
Posted: Monday, October 12, 2015 9:08:57 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,229
Hi,

Can you handle EO.Base.Runtime.Exception event and see if that event triggers? If it does, please post the exception message and stack trace.

Thanks!
Bob Noordam
Posted: Monday, October 12, 2015 9:42:01 AM
Rank: Newbie
Groups: Member

Joined: 10/12/2015
Posts: 9
i added this in the constructor;

Code:

        public EOBrowser(string url, string database, FormRoosMain parentHandle) {

            InitializeComponent();
            //
            // Attempt to catch
            EO.Base.Runtime.Exception += RuntimeOnException;

            //
            // Other Init


and a simple:

Code:

        private void RuntimeOnException(object sender, ExceptionEventArgs exceptionEventArgs) {
            MessageBox.Show("booh");
        }



The exception is not picked up by this, and bubbles up to the main form entry on the Application.Run(appform) line.

Code:

        private static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            // Application.SetUnhandledExceptionMode(UnhandledExceptionMode.ThrowException);

            var appform = new FormBedrijfskeuze();
            Application.ThreadException += appform.UnhandledThreadExceptionHandler;
            Application.Run(appform);
        }
eo_support
Posted: Monday, October 12, 2015 10:06:13 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,229
Hi,

Is there anyway you can isolate this problem into a test application and send the test application to us? See here for more details about sending test application to us:

http://www.essentialobjects.com/forum/test_project.aspx

Thanks!
Jeppe HS
Posted: Monday, October 12, 2015 10:08:18 AM
Rank: Advanced Member
Groups: Member

Joined: 1/5/2015
Posts: 60
It doesn't trigger my Base.Runtime.Exception handler either.

But here is an example of the exception:

Exception: Operation is not valid due to the current state of the object.
Exception Type: System.InvalidOperationException
Exception Stack trace:
at EO.Internal.jm.a(String[] A_0, String A_1, String A_2, String A_3, String A_4)
at EO.Internal.aa0.a(String A_0, String A_1)
at EO.Internal.cr.a()
at EO.Internal.cr.b(Boolean A_0)
at EO.Internal.wz.p()
at EO.Internal.cr..ctor(WebView A_0)
at EO.WebBrowser.WebView.w()
at EO.WebBrowser.WebView.Create(IntPtr hWnd)
at EO.WebBrowser.Wpf.WebControl.a.a(HandleRef A_0)
at System.Windows.Interop.HwndHost.BuildWindow(HandleRef hwndParent)
at System.Windows.Interop.HwndHost.BuildOrReparentWindow()
at System.Windows.Interop.HwndHost.OnSourceChanged(Object sender, SourceChangedEventArgs e)
at System.Windows.SourceChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at System.Windows.PresentationSource.UpdateSourceOfElement(DependencyObject doTarget, DependencyObject doAncestor, DependencyObject doOldParent)
at System.Windows.PresentationSource.OnVisualAncestorChanged(DependencyObject uie, AncestorChangedEventArgs e)
at System.Windows.UIElement.OnVisualAncestorChanged(Object sender, AncestorChangedEventArgs e)
at System.Windows.Media.Visual.ProcessAncestorChangedNotificationRecursive(DependencyObject e, AncestorChangedEventArgs args)
at System.Windows.Media.Visual.FireOnVisualParentChanged(DependencyObject oldParent)
at System.Windows.Media.Visual.AddVisualChild(Visual child)
at System.Windows.Controls.Decorator.set_Child(UIElement value)
at EO.WebBrowser.Wpf.WebControl.OnApplyTemplate()
at System.Windows.FrameworkElement.ApplyTemplate()
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
at System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Control.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.ContextLayoutManager.UpdateLayout()
at System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)
at System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
at System.Windows.Media.MediaContext.AnimatedRenderMessageHandler(Object resizedCompositionTarget)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

eo_support
Posted: Monday, October 12, 2015 11:14:55 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,229
Hi,

This is just to let you know that we have been able to reproduce this problem. We will post an update build as soon as possible.

Thanks!
eo_support
Posted: Monday, October 12, 2015 8:41:01 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,229
Hi,

This is just to let you know that we have posted a new build that should address this problem. You can download the new build from our download page.

Thanks!
Jeppe HS
Posted: Tuesday, October 13, 2015 4:40:40 AM
Rank: Advanced Member
Groups: Member

Joined: 1/5/2015
Posts: 60
Works on my end. Great!
eo_support
Posted: Tuesday, October 13, 2015 7:41:43 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,229
Thanks for confirming the fix!
Bob Noordam
Posted: Tuesday, October 13, 2015 8:12:11 AM
Rank: Newbie
Groups: Member

Joined: 10/12/2015
Posts: 9
Same here. Tested against 15.2.85 from NuGet and everything is back to normal. Impressive speed in handling this :)
eo_support
Posted: Tuesday, October 13, 2015 8:22:48 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,229
Glad to hear that! Thanks to both of you for confirming the fix! Please feel free to let us know if there is anything else.


You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.