Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

открытие elementclient.exe

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 28.05.2012, 19:01   #1
 Пехотинец
Аватар для Meg(0)
 
Meg(0) никому не известный тип
Регистрация: 29.05.2010
Сообщений: 58
Популярность: 10
Сказал(а) спасибо: 80
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию открытие elementclient.exe

открытие elementclient.exe

Windows.WinExec('C:\Games\Perfect World\element\elementclient.exe', Windows.SW_NORMAL);

вылетает ошибка..через sellexecute тоже самое,если этот адрес в папке прописать,то открывается..:
[Ссылки могут видеть только зарегистрированные пользователи. ]
  Ответить с цитированием
Старый 28.05.2012, 20:48   #2
 Пехотинец
Аватар для dwa83
 
dwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личностьdwa83 определенно авторитетная личность
Регистрация: 21.03.2012
Сообщений: 83
Популярность: 1178
Сказал(а) спасибо: 18
Поблагодарили 101 раз(а) в 53 сообщениях
 
По умолчанию Re: открытие elementclient.exe

CreateProcess
Тут указывается каталог запуска. Мне кажется что при запуске вашим способом текущим считается каталог вашей проги и клиент пытается найти в нём нужные ему файлы, которых тут в помине нет.

У меня запуск такой(с++):
Код:
// Запуск игры
void CLIENT::RunGame(AnsiString path)
{
  STARTUPINFO si;
  PROCESS_INFORMATION pi;
  AnsiString dir=path+"\\element";
  AnsiString name=dir+"\\elementclient.exe";
  GetStartupInfo(&si);
  if(!CreateProcess(name.c_str(),"console:1", NULL, NULL, FALSE, 0, NULL, dir.c_str(), &si, &pi))
  {
    ShowMessage("Не удалось запустить клиент. Проверьте правильность указанной папки с игрой.");
  }
}
Как параметр передавать строку "C:\\Games\\Perfect World" именно с двойными слешами.

PS:
Цитата:
Легче всего использовать WinExec. Однако Microsoft не рекомендует его использование, а предлагает пользоваться CreateProcess. Но для выполнения тех или иных задач он вполне подходит. Почему же нежелателен вызов WinExec дело все в том, что фактически он содержит обращение к еще одному устаревшему системному вызову LoadModule, который обращается к CreateProcess со значениями аргументов по умолчанию

________________
╔═╗
ˑ ˑ ╬ ╬
╚═╝

Последний раз редактировалось dwa83; 28.05.2012 в 20:57.
  Ответить с цитированием
Пользователь сказал cпасибо:
Meg(0) (29.05.2012)
Старый 29.05.2012, 00:15   #3
 Пехотинец
Аватар для Meg(0)
 
Meg(0) никому не известный тип
Регистрация: 29.05.2010
Сообщений: 58
Популярность: 10
Сказал(а) спасибо: 80
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: открытие elementclient.exe

dwa83, попробовал через create process таже самая ошибка вылетает..(
Код:
var
  Rlst: LongBool;
  StartUpInfo: TStartUpInfo;
  ProcessInfo: TProcessInformation;
  Error: integer;
begin
  FillChar(StartUpInfo, SizeOf(TStartUpInfo), 0);
  with StartUpInfo do
  begin
    cb := SizeOf(TStartUpInfo);
    dwFlags := STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK;
    wShowWindow := SW_SHOWNORMAL;
  end;
  Rlst := CreateProcess('C:\\Games\\Perfect World\\element\\elementclient.exe', ' elementclient.exe', nil, nil, false, NORMAL_PRIORITY_CLASS, nil, nil, StartUpInfo, ProcessInfo);
  if Rlst then
  with ProcessInfo do begin
    WaitForInputIdle(hProcess, INFINITE); // ждем завершения инициализации
    CloseHandle(hThread); // закрываем дескриптор процесса
    CloseHandle(hProcess); // закрываем дескриптор потока
  end
else Error := GetLastError;
end;
  Ответить с цитированием
Старый 29.05.2012, 00:19   #4
-= Элитный Мастер =-
 Главнокомандующий
Аватар для Kitsune
 
Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
 
По умолчанию Re: открытие elementclient.exe

Meg(0), и где же в вашем коде передается рабочая директория?

Цитата:
Сообщение от Meg(0)Посмотреть сообщение
CreateProcess('C:\\Games\\Perfect World\\element\\elementclient.exe', ' elementclient.exe', nil, nil, false, NORMAL_PRIORITY_CLASS, nil, nil, StartUpInfo, ProcessInfo);

вместо желтого вставить
Код:
'C:\\Games\\Perfect World\\element'
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
  Ответить с цитированием
Пользователь сказал cпасибо:
Meg(0) (29.05.2012)
Старый 29.05.2012, 00:30   #5
 Пехотинец
Аватар для Meg(0)
 
Meg(0) никому не известный тип
Регистрация: 29.05.2010
Сообщений: 58
Популярность: 10
Сказал(а) спасибо: 80
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: открытие elementclient.exe

TBX1n, о,огромное пасиб))

Добавлено через 53 минуты
а как потом найти хэндл этого окна?
так пробовал,не получается
vHandle := GetWindow(Application.Handle, GW_HWNDFIRST);

Последний раз редактировалось Meg(0); 29.05.2012 в 01:23. Причина: Добавлено сообщение
  Ответить с цитированием
Старый 29.05.2012, 10:00   #6
-= Элитный Мастер =-
 Главнокомандующий
Аватар для Kitsune
 
Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
 
По умолчанию Re: открытие elementclient.exe

Цитата:
Сообщение от Meg(0)Посмотреть сообщение
а как потом найти хэндл этого окна?

1. Из ProcessInfo получаем хендл процесса и треда, в котором работает приложение
2. Делаем WaitForInputIdle передавая туда хендл процесса и максимальное время ожидания
3. Используем EnumThreadWindows, чтобы найти все окна, созданные в треде процесса
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.

Последний раз редактировалось Kitsune; 29.05.2012 в 10:03.
  Ответить с цитированием
Старый 29.05.2012, 12:00   #7
 Пехотинец
Аватар для Meg(0)
 
Meg(0) никому не известный тип
Регистрация: 29.05.2010
Сообщений: 58
Популярность: 10
Сказал(а) спасибо: 80
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: открытие elementclient.exe

пасиб,но сделаю всё проще через find window
  Ответить с цитированием
Старый 29.05.2012, 12:01   #8
 Сержант
Аватар для BritishColonist
 
BritishColonist излучает ауруBritishColonist излучает ауруBritishColonist излучает ауруBritishColonist излучает ауруBritishColonist излучает ауруBritishColonist излучает ауру
Регистрация: 11.12.2010
Сообщений: 110
Популярность: 541
Сказал(а) спасибо: 5
Поблагодарили 66 раз(а) в 39 сообщениях
 
По умолчанию Re: открытие elementclient.exe

Минуточку, в дельфи же достаточно одного слеша при записи путей до файлов, не?
________________
Принимаю реквесты на статьи, программы. Всё будет запилено в лучшем виде :3
  Ответить с цитированием
Старый 29.05.2012, 12:09   #9
-= Элитный Мастер =-
 Главнокомандующий
Аватар для Kitsune
 
Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
 
По умолчанию Re: открытие elementclient.exe

Цитата:
Сообщение от Meg(0)Посмотреть сообщение
пасиб

Для спасибо есть кнопка.

Цитата:
Сообщение от Meg(0)Посмотреть сообщение
но сделаю всё проще через find window

Это не даст вам 100% гарантии, что поймаете нужное окно.
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
  Ответить с цитированием
Старый 29.05.2012, 13:00   #10
 Пехотинец
Аватар для Meg(0)
 
Meg(0) никому не известный тип
Регистрация: 29.05.2010
Сообщений: 58
Популярность: 10
Сказал(а) спасибо: 80
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: открытие elementclient.exe

TBX1n, FindWindow(nil,Pchar('Perfect World')); 100% гарантия))
  Ответить с цитированием
Старый 29.05.2012, 14:18   #11
-= Элитный Мастер =-
 Главнокомандующий
Аватар для Kitsune
 
Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(Kitsune сломал счётчик популярности :(
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
 
По умолчанию Re: открытие elementclient.exe

Цитата:
Сообщение от Meg(0)Посмотреть сообщение
FindWindow(nil,Pchar('Perfect World')); 100% гарантия))

При условии, что только одно окно запущено и называется Perfect World...
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
  Ответить с цитированием
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Неработает elementclient павел94 Общение и обсуждение Perfect World 10 31.03.2012 23:38
[Помогите!] Elementclient 1.4.4 sashasuv2010 Вопросы и ответы, обсуждения 4 19.01.2012 15:31
elementclient.exe gamer0ns Общение и обсуждение Perfect World 0 25.12.2011 11:14
Elementclient KTyJIx Общение и обсуждение Perfect World 1 13.11.2009 20:19

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 19:28.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net