Показать сообщение отдельно
  #1  
Старый 02.04.2013, 03:13
speles speles вне форума
Прохожий
 
Регистрация: 14.01.2011
Сообщения: 2
Репутация: 10
По умолчанию Проблема с CreateProcess

Здравствуйте!
Для запуска чужого приложения использую такую функцию:
Код:
procedure ExecApp(CommandLine: string);
 var
  sa : TSECURITYATTRIBUTES;
  si : TSTARTUPINFO;
  pi : TPROCESSINFORMATION;
begin
  sa.nLength := sizeof(sa);
  sa.bInheritHandle := False;
  sa.lpSecurityDescriptor := nil;
  ZeroMemory(@si, SizeOf(si));
  ZeroMemory(@pi, SizeOf(pi));
  si.cb := SizeOf(si);
  si.dwFlags := STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES;
  si.wShowWindow := SW_SHOW;
  si.hStdInput := 0;
  si.hStdOutput := 0;
  si.hStdError := 0;
  CreateProcessW(nil, pchar(CommandLine), nil, nil, False,  NORMAL_PRIORITY_CLASS, nil, nil, si, pi);
end;
Дочерние приложения запускаются. Но, когда я закрываю свое приложение, дочерние приложение также закрывается. Как сделать чтобы оно продолжало работать?

UPD: Сам разобрался случайно. Такое поведение только когда запускаю приложение из Delphi. Когда запускаю отдельно - все ОК. >_<
Ответить с цитированием