Skip to content

WinForms Example CloseChannel Exception #872

@rcha86

Description

@rcha86

I'm using CefSharp.39.0.0-pre03. When I run the WinForms Example in Release mode from Visual Studio, more than half the time when I close a tab or even the entire application, I see an exception in BrowserProcessServiceHost.CloseChannel. If launch the EXE from the command line, it shuts down just fine.

The stack trace is as follows:

at System.ServiceModel.Channels.PipeConnection.WriteHelper(Byte[] buffer, Int32 offset, Int32 size, Boolean immediate, TimeSpan timeout, Object& holder)
   at System.ServiceModel.Channels.PipeConnection.Write(Byte[] buffer, Int32 offset, Int32 size, Boolean immediate, TimeSpan timeout)
   at System.ServiceModel.Channels.BufferedConnection.WriteNow(Byte[] buffer, Int32 offset, Int32 size, TimeSpan timeout, BufferManager bufferManager)
   at System.ServiceModel.Channels.BufferedConnection.WriteNow(Byte[] buffer, Int32 offset, Int32 size, TimeSpan timeout)
   at System.ServiceModel.Channels.BufferedConnection.Write(Byte[] buffer, Int32 offset, Int32 size, Boolean immediate, TimeSpan timeout)
   at System.ServiceModel.Channels.FramingDuplexSessionChannel.CloseOutputSessionCore(TimeSpan timeout)
   at System.ServiceModel.Channels.TransportDuplexSessionChannel.CloseOutputSession(TimeSpan timeout)
   at System.ServiceModel.Channels.TransportDuplexSessionChannel.OnClose(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Close(TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.OnClose(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Close(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Close()

Should I worry about this? It is surrounded with a try-catch block, but is there a better solution?

I am using CefSharp in an ActiveX control (I know. Shoot me, right?). With the ActiveX control, on shutdown, I see a similar communication error when the ActiveX control tries to Dispose itself. The ActiveX process does not close and the BrowserSubprocess for the GPU does not shutdown. I have included a try-catch block as well, but it does not seem to fix the issue. Any thoughts? I'm guessing that it has to do with how the ActiveX shuts down and Internet Explorer closes.

Thanks for the help!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions