Проблема при выходе из приложения, вызванного с использованием JNI из Delphi - PullRequest
3 голосов
/ 28 июня 2011

Я вызываю функцию Java в Delphi 7, используя JNI. При нажатии кнопки «Пуск» загружается Java-приложение, а при нажатии кнопки «Стоп» Java-приложение закрывается. Но моя проблема в том, что когда я нажимаю кнопку «Стоп», приложение Java и приложение Delphi закрываются. Мне нужно выйти только из приложения Java, а не из приложения Delphi.

var
  exit_code: Integer;
  Runtime  : TJavaRuntime;
begin
  exit_code := 0;
  Runtime.CallExit(exit_code);
end

1 Ответ

4 голосов
/ 28 июня 2011

Runtime.exit() вызывает Runtime.halt(), что принудительно завершает процесс JVM. К сожалению, JVM (jvm.dll) работает в том же процессе, что и ваше приложение, поэтому вызов Runtime.exit() завершает ваше приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...