C# 用 CefSharp 重新打开一个表单
C# Reopening a form with CefSharp
有一个密码:
MainBot mainBot = new MainBot ();
mainBot.IdBot = "hm";
mainBot.Url = "https://www.home-style.shop/";
mainBot.Proxy = "";
mainBot.IdBtn = "";
mainBot.TimeBtnClick = 1000;
mainBot.TimeReturn = 5000;
mainBot.Show ();
它像使用浏览器一样打开表单(使用 CefSharp 库),然后在 TimeReturn 中指定的时间后关闭它 -> this.Close ();
当您通过按钮重新打开表单时,它会显示 -> “CEF 每个进程只能初始化一次。这是底层 CEF / Chromium 框架的限制。您可以在运行时通过 [=20 更改许多(不是全部)设置=]。请参阅 https://github.com/cefsharp/CefSharp/wiki/General-Usage#request-context-browser-isolation 使用 Cef.IsInitialized 来防止此异常。如果您意外看到此内容,那么您可能正在调用Cef.Initialize在您创建 ChromiumWebBrowser 实例之后,必须在创建第一个实例之前。"
灌化可以进行一次。因此,我在表单中添加了 ** FormClosing ** 并输入了 Cef.Shutdown ();
初始化错误已修复,但现在,当重新打开时,表单不会打开,而打开它的表单只是挂起并关闭。
请告诉我该怎么做
CefSharp 可以通过两种方式初始化:
- 显式:使用适当的 cefSettings
调用 Cef.Initialize(settings)
- 隐式:当您打开一个新的 chromiumWebBrowser CEF 将使用默认设置进行初始化
虽然您的代码不清楚您是如何执行初始化部分的。
就我个人而言,我更喜欢使用我选择的 cefSettings 明确地执行此操作。无论你在哪里做
- 主要方法
- 表单构造函数
- load/show 事件
只需确保每个应用程序只调用一次初始化!
我通常在打开任何表单之前在 main 方法中执行此操作。
同样适用于cef.shutdown:调用CEF 后无法再次打开!
我在应用关闭application.run之后调用
更多信息在 General Usage Guide
有一个密码:
MainBot mainBot = new MainBot ();
mainBot.IdBot = "hm";
mainBot.Url = "https://www.home-style.shop/";
mainBot.Proxy = "";
mainBot.IdBtn = "";
mainBot.TimeBtnClick = 1000;
mainBot.TimeReturn = 5000;
mainBot.Show ();
它像使用浏览器一样打开表单(使用 CefSharp 库),然后在 TimeReturn 中指定的时间后关闭它 -> this.Close ();
当您通过按钮重新打开表单时,它会显示 -> “CEF 每个进程只能初始化一次。这是底层 CEF / Chromium 框架的限制。您可以在运行时通过 [=20 更改许多(不是全部)设置=]。请参阅 https://github.com/cefsharp/CefSharp/wiki/General-Usage#request-context-browser-isolation 使用 Cef.IsInitialized 来防止此异常。如果您意外看到此内容,那么您可能正在调用Cef.Initialize在您创建 ChromiumWebBrowser 实例之后,必须在创建第一个实例之前。"
灌化可以进行一次。因此,我在表单中添加了 ** FormClosing ** 并输入了 Cef.Shutdown ();
初始化错误已修复,但现在,当重新打开时,表单不会打开,而打开它的表单只是挂起并关闭。
请告诉我该怎么做
CefSharp 可以通过两种方式初始化:
- 显式:使用适当的 cefSettings 调用 Cef.Initialize(settings)
- 隐式:当您打开一个新的 chromiumWebBrowser CEF 将使用默认设置进行初始化
虽然您的代码不清楚您是如何执行初始化部分的。
就我个人而言,我更喜欢使用我选择的 cefSettings 明确地执行此操作。无论你在哪里做
- 主要方法
- 表单构造函数
- load/show 事件
只需确保每个应用程序只调用一次初始化! 我通常在打开任何表单之前在 main 方法中执行此操作。
同样适用于cef.shutdown:调用CEF 后无法再次打开! 我在应用关闭application.run之后调用
更多信息在 General Usage Guide