首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >cefsharp.browsersubprocess -如何正确地杀死它

cefsharp.browsersubprocess -如何正确地杀死它
EN

Stack Overflow用户
提问于 2021-09-22 10:44:00
回答 1查看 122关注 0票数 0

在工作中,我们的应用程序正在启动cefsharp.browsersubprocess。

我正在将我们的应用程序与自动更新框架squirrel.windows集成在一起。

在更新之后,我们的应用程序运行一个squirrel方法,该方法启动另一个squirrel进程(update.exe),然后在我们的应用程序上执行environment.exit。(然后,update.exe将等待我们的应用程序退出,然后启动我们的应用程序的更新版本)。

发生的情况是libcef在点(4000001f)向事件管理器抛出了一个错误,我猜是因为我们杀死了它的父亲(我们的应用程序),但没有杀死cefsharp.browsersubprocess。

如果我的理论是正确的(我希望得到确认),我计划修改squirrel的方法,获得我们应用程序的子进程列表,然后在我们的应用程序上执行environment.exit之前杀死它们(只有cefsharp.browsersubprocess)。

我该如何正确地杀死它呢?被process.Kill?被process.CloseMainWindow?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-11-03 07:45:55

它对我来说很有用。

代码语言:javascript
运行
复制
internal static void AppRestart()
{
    ProcessStartInfo Info = new ProcessStartInfo();
    Info.Arguments = "/C choice /C Y /N /D Y /T 1 & START \"\" \"" +
    System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) +
        "\\..\\" + System.IO.Path.GetFileName(Assembly.GetExecutingAssembly().Location) + "\"";
    Info.WindowStyle = ProcessWindowStyle.Hidden;
    Info.CreateNoWindow = true;
    Info.FileName = "cmd.exe";
    Process.Start(Info);
    Process.GetCurrentProcess().Kill();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69282669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档