gpt4 book ai didi

c# - Process.Exited 仅有时调用

转载 作者:太空宇宙 更新时间:2023-11-03 16:16:28 31 4
gpt4 key购买 nike

<分区>

各位程序员好,

我正在为这个问题挠头。我正在使用以下方法启动一个进程。第一个是 wkhtmltoimage.exe,然后是 wkhtmltopdf.exe。一切都按预期工作,除了 Process_Exited 并不总是被调用。在我的程序的一次运行中,我多次按下相应的按钮,我有所有可能的变化:

  • 只有 wkhtmltoimage 引发了事件
  • 只有 wkhtmltopdf 引发了事件
  • 都做了
  • 根本没有引发事件。

通过任务管理器和调试器我可以验证进程总是正确结束。
没有什么是可重现的,每次运行都是不同的。这是我第一次尝试流程,也许我做错了什么。幸运的是,解决这个问题对我的申请来说并不重要。

protected Process StartProcess(string FileName, string Arguments)
{
ProcessStartInfo MyStartInfo = new ProcessStartInfo(FileName, Arguments)
{
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardOutput = true,
RedirectStandardInput = true
};

Process Proc = new Process { StartInfo = MyStartInfo };
Proc.EnableRaisingEvents = true;
Proc.Exited += (sender, name) => Process_Exited(Proc, Proc.ProcessName);
Proc.Start();

return Proc;
}


protected void Process_Exited(object sender, string ProcessName)
{
Debug.WriteLine("Process_Exited: " + ProcessName);
}

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