gpt4 book ai didi

delphi - 如何销毁动态创建的Tchromium(Delphi)组件?

转载 作者:行者123 更新时间:2023-12-03 15:47:53 26 4
gpt4 key购买 nike

如何销毁动态创建的Tchromium组件?我在 DLL 中使用,该组件需要多次创建和销毁它,而无需取消分配 DLL,问题是不释放内存并且无法清除缓存文件夹。如果我使用CefShutDown,出现问题及时重新创建浏览器一次。我正在使用最新版本的 DCEF3 。像这样动态创建:

crm := TChromium.Create(Form1);
crm.SetParentComponent (Panel2);
crm.Align := alClient;

尝试了多种方式来销毁:

FreeAndNil(crm);
crm.free;
crm := nil;
CefShutDown;

CefShutDown 及时解决了销毁问题,当我再次尝试重新创建组件而不释放 DLL 时,问题就出现了。

还解决了我遇到的另一个问题,即 UserAgent 无法更改浏览器的娱乐。

感谢任何解决我的问题的建议。

最佳答案

此行为是按照设计的。 Issue 1237 Chromium 问题跟踪器上的问题与您的问题相同。相关摘录为:

CefInitialize/CefShutdown cannot be called multiple times in the same process. You can create/destroy multiple browser windows without re-initializing CEF.

您必须避免调用 CefShutDown

关于delphi - 如何销毁动态创建的Tchromium(Delphi)组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30239616/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com