【发布时间】:2020-05-29 11:58:06
【问题描述】:
我正在制作一个非常简单的 Delphi 控制台 应用程序 ({$APPTYPE CONSOLE}),主窗体上只有一个 TChromiumWindow。该应用程序的目的是检索网页、处理 HTML 并将一些 JSON 输出到控制台。由于网页的性质,这不能使用纯 HTTP 请求来完成,这也需要运行一些 javascript。
一切都按预期进行,除了一个问题。 chromium 组件也会向控制台输出一些错误消息,这使我的 JSON 无效!例如,我在启动时总是收到以下两条错误消息:
[0529/133941.811:ERROR:gpu_process_transport_factory.cc(990)] Lost UI shared context.
[0529/133941.832:ERROR:url_request_context_getter_impl.cc(130)] Cannot use V8 Proxy resolver in single process mode.
当然,最好的解决方案是一开始就不要收到任何错误消息,但由于几个原因(主要与公司遗留代码有关),我不能例如禁用单进程模式。
所以下一个最好的办法是防止这些错误消息被打印到控制台。我试过设置
GlobalCEFApp.LogSeverity := LOGSEVERITY_DISABLE;
但这并没有帮助。使用GlobalCEFApp.LogFile 指定日志文件也无济于事。
那么我怎样才能完全阻止 Chromium 组件写入控制台呢?
【问题讨论】:
-
您可以将 JSON 保存到文件中,而不是使用标准输出。
标签: delphi chromium-embedded cef4delphi