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

Авторизация в игре Delphi

-

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

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

Ответ
 
Опции темы
Старый 09.10.2011, 16:29   #1
 Рыцарь-защитник
Аватар для "Unix
 
"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации
Регистрация: 08.07.2010
Сообщений: 631
Популярность: 3773
Сказал(а) спасибо: 88
Поблагодарили 275 раз(а) в 163 сообщениях
Отправить сообщение для "Unix с помощью Skype™
 
Question Авторизация в игре Delphi

Подскажите, как можно реализовать авторизацию онлайн игре?
Допустим я когда захожу в игру у меня появляется процесс elementclient.exe Вот собственно как в него залезть, и ввести данные пароль и логин.
Я в этом пока не очень разбираюсь, по этому тапками не кидать. Новичок пока в этом деле..
________________
  Ответить с цитированием
Старый 09.10.2011, 17:09   #2
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Авторизация в игре Delphi

Цитата:
Сообщение от DesrpadoПосмотреть сообщение
как в него залезть

Найти окно ПВ по заголовку окна или по классу окна и, по надобности, дать программе доступ к процессу:
Код:
var
Wnd:THandle;
PID,hProcess:DWord;
begin
Wnd:=FindWindow('Perfect World','ElementClient Window'); //Первое - заголовок окна, второе - класс
GetWindowThreadProcessId(Wnd,@PID);
hProcess:=OpenProcess(PROCESS_ALL_ACCESS,False,PID);
end;
Далее нужно разморозить окно, для того, чтобы наша программа могла передать клиенту логин и пароль. Тут есть несколько способов, но самый лёгкий для понимания - это постоянная смена флага разморозки. Для этого кидаем на форму Таймер и ставим на нём интервал в 300мс. Потом в обработчике событий таймера пишем:
Код:
var
Wnd:THandle;
PID,hProcess,temp:DWord;
const
ua:DWord=$A5C43C;
unfreeze:DWord=1;
begin
Wnd:=FindWindow('Perfect World','ElementClient Window');
GetWindowThreadProcessId(Wnd,@PID);
hProcess:=OpenProcess(PROCESS_ALL_ACCESS,False,PID);
 try
  if hProcess<>0 then
   begin
   WriteProcessMemory(hProcess,ptr(ua),@unfreeze,1,temp);
   end;
 finally
 CloseHandle(hProcess);
 hProcess:=0;
 end;
end;
Ну а дальше нужно передать клиенту логин и пароль...
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
"Unix (09.10.2011), ktulx (23.04.2012)
Старый 09.10.2011, 18:27   #3
 Рыцарь-защитник
Аватар для "Unix
 
"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации
Регистрация: 08.07.2010
Сообщений: 631
Популярность: 3773
Сказал(а) спасибо: 88
Поблагодарили 275 раз(а) в 163 сообщениях
Отправить сообщение для "Unix с помощью Skype™
 
По умолчанию Re: Авторизация в игре Delphi

Цитата:
Сообщение от VeTaL_UAПосмотреть сообщение
Wnd:=FindWindow('Perfect World','ElementClient Window');

а разве не Wnd:=FindWindow('ElementClient','ElementClient Window');
ElementClient в процессах видно, и окно так же называется ElementClient
Спасибо вам большое, скажите а что на форму кидать что бы в писать первый код?
Если тут участвуют компоненты, напишите какие.?
________________
  Ответить с цитированием
Старый 09.10.2011, 19:44   #4
 Старший сержант
Аватар для Skuka.95
 
Skuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражанияSkuka.95 блестящий пример для подражания
Регистрация: 12.06.2010
Сообщений: 186
Популярность: 1746
Сказал(а) спасибо: 27
Поблагодарили 64 раз(а) в 59 сообщениях
Отправить сообщение для Skuka.95 с помощью ICQ
 
По умолчанию Re: Авторизация в игре Delphi

Цитата:
Сообщение от DesrpadoПосмотреть сообщение
и окно так же называется ElementClient

а у меня окно называется
Цитата:
Сообщение от DesrpadoПосмотреть сообщение
Perfect World

________________
Почти забросил раздел Pw скажем спасибо TBX1n и серверу
Цитата:
Сообщение от TBX1n
Скука новый админ

  Ответить с цитированием
Старый 10.10.2011, 13:38   #5
 Рыцарь-защитник
Аватар для "Unix
 
"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации"Unix гордость нации
Регистрация: 08.07.2010
Сообщений: 631
Популярность: 3773
Сказал(а) спасибо: 88
Поблагодарили 275 раз(а) в 163 сообщениях
Отправить сообщение для "Unix с помощью Skype™
 
По умолчанию Re: Авторизация в игре Delphi

Цитата:
Сообщение от Skuka.95Посмотреть сообщение
Perfect World

это руофф - у меня фришка)
________________
  Ответить с цитированием
Старый 11.10.2011, 18:32   #6
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Авторизация в игре Delphi

Цитата:
Сообщение от DesrpadoПосмотреть сообщение
а разве не Wnd:=FindWindow('ElementClient','ElementClient Window');

Можно вообще:
Код:
Wnd:=FindWindow(nil,'ElementClient Window');
То есть искать по классу окна, или:
Код:
Wnd:=FindWindow('ElementClient',nil);
То есть искать по заголовку окна(он может быть разным).
Цитата:
Сообщение от DesrpadoПосмотреть сообщение
Спасибо вам большое, скажите а что на форму кидать что бы в писать первый код?

В смысле вписать? Вписать заголовок окна и по нему найти само окно? Ну тогда нужно кинуть на форму компонент "Edit" из вкладки "Standart". Код:
Код:
Wnd:=FindWindow(Edit1.Text,nil);
Цитата:
Сообщение от DesrpadoПосмотреть сообщение
Если тут участвуют компоненты, напишите какие.?

В приведенных мною примерах кода компоненты участия не берут.
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Пользователь сказал cпасибо:
"Unix (12.10.2011)
Ответ


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Статья] Авторизация на сайте с помощью Indy. Delphi. VeTaL_UA Pascal/Delphi 13 11.01.2015 20:01
[Помогите!] Авторизация в ДО на delphi qwert-yg Вопросы и ответы, обсуждения 5 19.03.2012 16:55
[Помогите!] Авторизация на жук.ру DelphiLab Вопросы и ответы, обсуждения 3 01.08.2011 17:46
[Помогите!] Авторизация и бот BinKz Вопросы и ответы, обсуждения 7 10.05.2011 18:56
[Help] ФГ авторизация manstrrr Вопросы и ответы: RF Online 1 03.12.2009 22:06

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

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

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