В моем приложении C# я запускаю программу, используя класс .NET Process. Иногда после завершения программы Process.ExitCode равен -1. Это большая программа, и у меня возникли проблемы с отслеживанием того, где `exit' вызывается с -1.
На самом деле, я не понимаю, как возможно, чтобы программа возвращала код выхода -1. Я создал программу на C, которая просто возвращается из main'. Whatever value I return from C, in C#, I see that value mod 256. If the C program returns -1, in C#, I see 255. From a Cygwin bash shell,
echo $?' также показывает 255 в этом случае.
Исходная программа — та, которая показывает ExitCode, равную -1, — написана на OCaml. Я не думаю, что это должно иметь значение.
Итак, что может привести к тому, что Process.ExitCode будет отображаться как -1?