如何从exe获取返回值并重新启动它

ssh*_*hah 4 c# mfc

场景:我有一个MFC代码调用在C#中创建的exe(它是一个Windows窗体应用程序)

需要: 我需要exe在关闭时返回一个值,并在返回值的基础上再次启动相同的exe

psudocode

  int result = RunExe("exename", arguments)
  if(result == 1)
  {
     result =  RunExe("exename", arguments)
  }
Run Code Online (Sandbox Code Playgroud)

我必须将if条件置于循环中吗?

请给我一些建议.1.如何从exe返回一个值2.如何收集返回值3.如何重启exe

Wol*_*lf5 8

您的C#EXE可以返回这样的int值:

[STAThread]
public static int Main() {
    return 5;
}
Run Code Online (Sandbox Code Playgroud)

您的其他应用必须像其他人解释的那样处理返回值.

var proc = Process.Start("mycsharwinformapp.exe"):
proc.WaitForExit();

//If the code is 5 restart app!
if(proc.ExitCode==5) Process.Start("mycsharwinformapp.exe"): 
Run Code Online (Sandbox Code Playgroud)