Jac*_*ack 1 c# process system-calls
我正在使用这个:
var proc2 = Process.Start(Path.GetFullPath(filename));
proc2.Exited += (_, __) =>
{
MessageBox.Show("closed!");
};
Run Code Online (Sandbox Code Playgroud)
但是我关上了窗户而没有得到MessageBox.Show("closed!");.如何解决这个问题?
你忘了把它设置EnableRaisingEvents为真.
此外,您可能希望使用构造函数创建Process,设置ProcessStartInfo,然后在注册后调用Start以侦听事件.否则你有一个竞争条件,在你注册听取事件之前进程退出(不太可能我知道,但在数学上不可能).
var process = new Process();
process.StartInfo = new ProcessStartInfo(Path.GetFullPath(filename));
process.EnableRaisingEvents = true;
process.Exited += (a, b) =>
{
MessageBox.Show("closed!");
};
process.Start();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1378 次 |
| 最近记录: |