首页 > 解决方案 > 如何防止以 process:Command 启动的 Windows 程序打开弹出窗口?

问题描述

我运行这样的可执行文件:

let output = Command::new("executable_file")
                    .args( &["-path", path] ).output()?;
//do stuff with output...

有时会发生错误,并且可执行文件会报告错误,这将导致需要由用户关闭的 Windows 错误弹出窗口。

有没有办法阻止 Windows 弹出窗口或关闭任何出现并继续的弹出窗口?

目前我的程序只会坐在那里等待用户关闭弹出窗口......

标签: windowsrust

解决方案


如果确实打开了错误弹出窗口,我决定终止命令进程。

我通过使用spawn()which 将创建一个子进程来做到这一点,允许我在开始运行 .exe 后继续执行我的代码,然后只是错误处理它,所以如果可执行文件由于弹出而挂起(你可以告诉它会挂起经过特定的时间后)然后杀死子进程......


推荐阅读