Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ] > Код на шару!
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #5  
Старый 03.06.2013, 19:38
serega6531 serega6531 вне форума
Начинающий
 
Регистрация: 03.03.2013
Сообщения: 106
Версия Delphi: Delphi 7, XE5
Репутация: 10
По умолчанию Да

Цитата:
Сообщение от M.A.D.M.A.N.
Все темы в разделе " [ "Начинающим" ] "))

Ты так и не осилил ShellExecute/CreateProcess? Вон тот лайнчер через Cerateprocess как раз запускает.

Вот стек при вызове ф-ии:
Код:
00287C90   00000000  |ModuleFileName = NULL
00287C94   00287CD0  |CommandLine = ""C:\Program Files\Java\jre7\bin\javaw.exe" -Xms512m -Xmx1024m -jar "C:\Users\***\Desktop\Minecraft.exe""
00287C98   00000000  |pProcessSecurity = NULL
00287C9C   00000000  |pThreadSecurity = NULL
00287CA0   00000001  |InheritHandles = TRUE
00287CA4   00000020  |CreationFlags = NORMAL_PRIORITY_CLASS
00287CA8   00000000  |pEnvironment = NULL
00287CAC   00000000  |CurrentDir = NULL
00287CB0   0028FCD0  |pStartupInfo = 0028FCD0
00287CB4   00410C80  \pProcessInfo = Minecraf.00410C80

Или пипец все плохо и надо объяснять на пальцах?
Да, если можно. Я так понял надо эти данные запихнуть в функцию:
Цитата:
Сообщение от M.A.D.M.A.N.
Код:
function RunMyAppHidden(my_app : string; my_wait : bool) : bool; // по идее можно в процедуру переписать
  var
    si : TStartupInfo;
    pi : TProcessInformation;
  begin
    Result := false;
    try
      ZeroMemory(@si,SizeOf(si));
      si.cb := SizeOf(si);
      si.dwFlags := STARTF_USESHOWWINDOW;
      si.wShowWindow := SW_SHOWNORMAL;  // <--- обрати внимание на этот флаг
      if CreateProcess(nil,PChar(my_app),nil,nil,False,0,nil,nil,si,pi)=true then Result := true;
      try CloseHandle(pi.hThread); except ; end;
      if my_wait = true then WaitForSingleObject(pi.hProcess, INFINITE);
      try CloseHandle(pi.hProcess); except ; end;
    except
      Result := false;;
    end;
  end;
И пожалуйста, ругайтесь не очень сильно. Это же раздел для начинающих.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:45.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025