660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
1 | |
Работа с чужими окнами, а точнее добавление текста.07.07.2011, 16:53. Показов 7195. Ответов 30
Метки нет (Все метки)
Ребят помогите пожалуста, я хочу добавить текст в "Edit" чужой программы. Имя программы (Garena).
Но "WM_SETTEXT" не работает, я также пробовал "SetWindowText" но без результатно. Я просто очень много (спам ботов) видел для гарены. Хочу свой написать, но не получаеться не как добавить текст. Если кто знает иные методы добавление то пожалуйста пишите в этой теме. И кстати еше я видел что есть команды "WM_COPY" и "WM_PASTE". Если с помощью них можно вставлять текст то подскажите как это сделать. Также поля в которые я хочу добавить текст имеют свойство (ReadOnly). Так как с WInAPI я стал (дружить) недавно желательно ко всему приводить примеры. Всем заранее спасибо.
0
|
07.07.2011, 16:53 | |
Ответы с готовыми решениями:
30
Работа с чужими окнами Работа с чужими окнами Работа с чужими окнами Взаимодействие с чужими окнами |
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 16:57 | 2 |
)) зачем ты пишешь имя программы?
ищешь handle окна функция FindWindow(), потом ищешь handle эдита функция FindWindowEx() потом посылаешь сообщение WM_SETTEXT и все.
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 17:07 [ТС] | 3 |
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 17:11 | 4 |
когда я писал ответ про WM_SETTEXT ничего не было, может ты потом добавил
Добавлено через 56 секунд а хендл эдита верно находишь?
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 17:13 [ТС] | 5 |
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 17:18 | 6 |
ну без программы ничем помочь не могу.
ты про какой эдит говоришь, в который нужно ввести пароль? или другой какой-то? Могу скачать ее установить попробовать, если речь идет о полях для авторизации, если какие-то другие, то давай логин и пароль какой-нить что бы можно было залогинеться
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 17:19 [ТС] | 7 |
anonimus, если можеш то пожалуста скачай гарену и попробуй просто очень надо.
Вот сылка на гарену (http://sng.garena.com/~client/). Да вот когда при авторизации надо вести пароль и логин, вот тут я пытаюсь свой текст вставить, но неполучается. "Имеют свойство (ReadOnly)" К этому не относится. Вот если что логин и пароль: Логин: 2~MaN Пароль: 523844 Попробуй с полями авторизации, после авторизации там слева будут команты, при заходе в комнату есть чат попробуй туда тоже добавить.
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 17:58 | 8 |
покажи ка свой код, у меня с первого раза получилось
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 18:00 [ТС] | 9 |
Ого, сейчас кину.
Вот держи то что нужно. function SetText_(hWnd: HWND; lpString: PChar): LRESULT;stdcall; var tmr:LRESULT; begin tmr:=SendMessage(hWnd, WM_SETREDRAW, WPARAM(0),lparam(lpString)); result:=tmr; end; procedure TTest.ClearBTNClick(Sender: TObject); begin //Очищаем поля Логин. SetText_(FindWindowEx(FindWindowEx(FindWindow('SkinDialog','Garena'),0,'ComboBox ',nil),0,'Edit',nil),Pchar('')); //Очищаем поля Пароль. SetText_(FindWindowEx(FindWindow('SkinDialog','Garena'),0,'Edit',nil),Pchar('')) ; end; procedure TTest.PasteBTNClick(Sender: TObject); Var Login , Password : String; Desck : Integer; Text : PChar; begin //Записываем в переменные Логин и Пароль для вставки в Гарену. Login:=LoginText.Text; Password:=PasswordText.Text; //Вставляем Логин в Гарену. Desck:=FindWindowEx(FindWindowEx(FindWindow('SkinDialog','Garena'),0,'ComboBox', nil),0,'Edit',nil); Text:=PChar(Login); SetText_(Desck,Text); //Вставляем Пароль в Гарену. Desck:=FindWindowEx(FindWindow('SkinDialog','Garena'),0,'Edit',nil); Text:=PChar(Password); SetText_(Desck,Text); end; У меня везде получаеться а именно в гарене нет .
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
||||||
07.07.2011, 18:09 | 10 | |||||
а что ж ты обманываешь, не вижу у тебя в коде где ты посылаешь WM_SETTEXT
у тебя сообщение WM_SETREDRAW Добавлено через 2 минуты
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 18:15 [ТС] | 11 |
Это я уже экспереминтировал от без исходности...
Блин на работает слухай а это может связанно с WIndow 7 ? Кинь пожалуста свой код.
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 18:29 | 12 |
он на рабочем компе остался, позже скину.
а ты в label пробовал выводить значение переменной Desck и сравнивать его например с показаниями spy++
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 18:33 [ТС] | 13 |
Да пробовал тока не spay++ а моей прогой
Я писал сканер что бы легче Handle искать было.
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
||||||
07.07.2011, 18:54 | 14 | |||||
у меня код аналогичен твоему
1
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 18:59 [ТС] | 15 |
Вот скачай там исходник моей проги и сканера которым я ищу.
Попробуй мою прогу у себя закомпилировать и изменить если получиться отпишись. Я пока в магаз за мылом и веревкой. Вот сылка http://files.mail.ru/XCJNKF За помощь плюсик уже обеспечен Да я шас твой код компильнул не работает x.O Может все таки дело в: 1. Windows 7. 2. В брандмауре. 3. В Delphi. А да я использую Embarcadero RAD Studio XE
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 19:06 | 16 |
ну это мне гарену нужно на домашний комп скачивать ставить, а так неохота ((
P.S. а у тебя на 7 уак включен?
0
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 19:08 [ТС] | 17 |
0
|
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
07.07.2011, 19:10 | 18 |
нет это контроль учетных записей uac
1
|
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
|
|
07.07.2011, 20:12 [ТС] | 19 |
Да включен.
Добавлено через 1 минуту Хотя нет тракбар на нем стоит в самом низу... Добавлено через 31 секунду Кстати подскажи как его совсем убрать если можно. Добавлено через 59 минут Шас у другана был, проверял прогу, у него тоже все работает нормально. Спасибо за помощь, плюсик я уже кинул. Если что буду еше писать.
0
|
07.06.2013, 05:03 | 20 |
А как работать например с окошком Касперского? Сейчас вот запустил программу которая отображает класс и Хэндл окна что под мышкой, навел на его Эдиты, но никаких эдитов найти невозможно, все окно один сплошной - QWidget
Он щас запущен(Kaspersky), и эта зараза гавкает когда написать QWidget , в любом браузере
0
|
07.06.2013, 05:03 | |
07.06.2013, 05:03 | |
Помогаю со студенческими работами здесь
20
Взаимодействие з чужими окнами Управление двумя чужими окнами. Как сделать, чтоб моя программы стояла рядышком с другими (чужими) окнами, как на рисунке Работа с чужими компонентами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |