razvann / delphichromiumembedded

Embedding Chromium (CEF1) in Delphi, tested on Delphi 2010, XE, XE2, Delphi 7.
6 stars 4 forks source link

Application hangs when closing if Chromium is used in DLL form #3

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Create DLL and add a form with Chromium on it
2. Create EXE which will show this form
3. Start application, show DLL form and close it
4. Close application. It will hang and stop responding.

What is the expected output? What do you see instead?
I expect application to terminate normally.

What version of the product are you using? On what operating system?
Windows 7 32-bit, Delphi 2010, cef_binary_r85_VS2005, delphichromiumembedded 
rev. 8

Please provide any additional information below.
Application hangs on cef_shutdown() call in ceflib.pas finalization section.

Original issue reported on code.google.com by sebast...@lastowski.com on 1 Sep 2010 at 9:24

Attachments:

GoogleCodeExporter commented 9 years ago
It is a CEF issue. My colleague have it resolved and will post changes into 
chromiumembedded source tree within few days. He also fixed the problem with no 
audio when opening media files.

Original comment by sebast...@lastowski.com on 21 Sep 2010 at 3:50

GoogleCodeExporter commented 9 years ago
It hangs because Chromium doesn't free some resources at the end. Also 
cef_initialize and cef_shutdown cannot be invoked from DllMain.

I've written proxy dll which does cleanup (libcef_proxy). If you want use 
Chromium in dll, you must use cefpas from the attachment and declare {$DEFINE 
BROWSER_DLL}.

Cefpas.zip is mixed version r10 and my own cef_binary_r100 implementation based 
on dcef-v0.1. It has some fixes due to r10.

Original comment by vtools...@gmail.com on 22 Sep 2010 at 1:43

Attachments:

GoogleCodeExporter commented 9 years ago
ceflib.pas updated to cef revision 107

Original comment by vtools...@gmail.com on 24 Sep 2010 at 9:27

Attachments:

GoogleCodeExporter commented 9 years ago
Could you please create a zip release which contains cefpas and libcef_proxy 
binary for r100 release?

Original comment by magnus12...@gmail.com on 13 Oct 2010 at 11:21

GoogleCodeExporter commented 9 years ago
It seems V-0.2 has the same behaviour in dll mode. 
It hangs with access violation at application close.
Is it possible to merge dll support into V-0.2 and create a new proxy_dll for 
chromium r100?

Original comment by magnus12...@gmail.com on 13 Oct 2010 at 5:26

GoogleCodeExporter commented 9 years ago
Nor V 0.3

Original comment by magnus12...@gmail.com on 7 Jan 2011 at 11:33

GoogleCodeExporter commented 9 years ago
I have the same problem in dcef-r275.
As in the cefpas.zip I moved the call CefUnloadLib (where we call cef_shutdown) 
to the destructor, but it did not help - sometimes the error disappears, 
sometimes not.

Original comment by briginevich on 27 Apr 2012 at 2:01