Показать сообщение отдельно
  #5  
Старый 08.09.2012, 09:05
Аватар для Amgsys HQ
Amgsys HQ Amgsys HQ вне форума
Начинающий
 
Регистрация: 11.11.2011
Адрес: Загрузочный сектор
Сообщения: 115
Версия Delphi: 7, XE
Репутация: 538
По умолчанию

Цитата:
Сообщение от poli-smen
var
SI: TStartupInfo;
PI: TProcessInformation;
JavaMachineExe, Params, WorkFolder: AnsiString;
begin
FillChar(SI, SizeOf(SI), 0);
SI.cb := SizeOf(SI);
SI.wShowWindow := SW_SHOWNORMAL;
SI.dwFlags := STARTF_USESHOWWINDOW;

JavaMachineExe := '<полный путь к java.exe>';
Params := AnsiQuotedStr(JavaMachineExe, '"') + ' -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui';
WorkFolder := 'M:\';

if not CreateProcessA(nil, Pointer(Params), nil, nil, False, NORMAL_PRIORITY_CLASS,
nil, Pointer(WorkFolder), SI, PI) then RaiseLastOSError;

try
WaitForInputIdle(PI.hProcess, INFINITE);
//...
finally
CloseHandle(PI.hProcess);
CloseHandle(PI.hThread);
end;
end;

Большое спасибо, данный код работает (другие не проверял).
__________________
Работа пpогpаммиста и шамана имеет очень много общего:
оба боpмочyт непонятные слова, совеpшают непонятные действия и не могyт объяснить, как оно pаботает.
Ответить с цитированием