![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Maverick |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1307 Регистрация: 22.9.2003 Где: Odessa, Ukraine Репутация: 2 Всего: 10 |
Доброе ... (нужное подставить)!
Есть такая проблемка.... Чужая программа работает... Известно только то, что вы знаете о любой запущенной вами проге - как она выглядит в Диспетчере задач и ее заголовок... В ней есть Edit (поле для занесения информации)... Необходимо подключится к окну и внести нужную информацию в этот Edit... И не в какой-нибудь, а именно нужный (их в окне несколько)... Автор: Brutus (http://coding.pp.ru/) procedure TForm1.Button1Click(Sender: TObject); var CurrWnd:HWND; begin while true do begin CurrWnd:=GetForegroundWindow; SetWindowText(CurrWnd, 'From Windows with Love'); Sleep(5000); end; end; Вот примерно как здесь... Только тут подключаются к текущему окну и меняют его заголовок... Извините, более близкого примера не нашел... Посоветуйте... как найти нужный окно, едит... как их идентифицировать и как к ним обратиться? |
|||
|
||||
| dm9 |
|
|||
![]() Дмитрий Копытин ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 3876 Регистрация: 22.7.2002 Где: Москва Репутация: 6 Всего: 137 |
Это раз...
http://delphi.vitpc.com/asp/viewitem.asp?catalogid=419 Это двас... http://delphimaster.ru/cgi-bin/faq.pl?look...=988620990&n=15 Хм... Может, фразу "поиск рулит" мне внести в подпись? А то всё время её тут пишу. PS. Да, забыл. ПОИСК РУЛИТ. В общем, что непонятно - спрашивай. Это сообщение отредактировал(а) dm9 - 23.3.2004, 20:44 |
|||
|
||||
| -=::BlackCat::=- |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 12.7.2003 Где: растёт анаша? Репутация: 1 Всего: 6 |
Обезательно дабавь большими красными буквами
-------------------- -=::BlackCat::=- такой дуратцкий аватар потому как мой 100х100, а такие подгрузить нелзя, движок форума чо сам не может его переделать?? гррр, админ, форум косячит |
|||
|
||||
| Maverick |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1307 Регистрация: 22.9.2003 Где: Odessa, Ukraine Репутация: 2 Всего: 10 |
procedure TForm1.SetTextToEdit(Sender: TObject); var EditHandle: THandle; TextToSet: PChar; begin SendMessage(EditHandle, WM_SETTEXT, 0, Integer(TextToSet)); end; Вот это мне понравилось.... Вроде то, что нужно.... Но как получить этот самый Handle того самого Edita, я простите, так и не понял.... Я так понимаю, что на окно уже все равно какое... главное Edit схватить.... EditHandle = ? А поиском я пользовался, и даже на форуме нашел несколько подобных тем.... Пробовал, но не получилось... |
|||
|
||||
| dm9 |
|
|||
![]() Дмитрий Копытин ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 3876 Регистрация: 22.7.2002 Где: Москва Репутация: 6 Всего: 137 |
Программу скачивал?
Значит, так. Скачиваем программу. Смотрим, какой тип у твоего окна (главного!). Если прогу ты писал сам, то тип окна - это название класса главной твоей формы. По умолчанию это - TForm1. Получаем дескриптор этого окна: HWND: THandle; HWND := FindWindow (ТИП_ОКНА, nil); Ну или HWND := FindWindow (ТИП_ОКНА, ИМЯ_ОКНА); Затем ищем при помощи FindWindowEx дочерние окна, какие тебе нужны. Определение - по типу окна, дескриптору меню, тексту и т. д. Намёк - GetMenu, GetWindowText, GetClassName - это смотри в первой статье. Если у тебя куча дочерних элементов одинаковых типов, наверное, придётся из перебрать (EnumWindows) и разделить по дексриптору меню (GetMenu). Вот тебе ещё статейка. http://delphimaster.ru/articles/winapi/index.html |
|||
|
||||
| Maverick |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1307 Регистрация: 22.9.2003 Где: Odessa, Ukraine Репутация: 2 Всего: 10 |
Программу скачивал, очень красиво.... Даже засылал уже в Едит значение..... получается....
Счас пытаюсь заслать по порядку обхода.... предположим Едит 3-ий по Tab - значит в него..... Мучаю... Нет прога не моя.... Абсолютно чужая... Ссылка последняя не работает... Спасибо за Хелп огромное.... Добавлено @ 14:32 Пробился все-таки... статейка бешеная, конечно... почитаем.... |
|||
|
||||
| dm9 |
|
|||
![]() Дмитрий Копытин ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 3876 Регистрация: 22.7.2002 Где: Москва Репутация: 6 Всего: 137 |
Посмотри в Обозревателе Окон (то, что ты скачал) дескриптор меню нужного тебе эдита.
Затем, наверное, придётся проходить при помощи EnumWindows по всем окнам типа TEdit (или Edit) и искать нужное тебе окно по дескриптору меню. |
|||
|
||||
| bartram |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1606 Регистрация: 22.2.2004 Где: Russia, Samara Репутация: 3 Всего: 29 |
Maverick скинь исходник этой проги мне на майл если не трудно
|
|||
|
||||
| Maverick |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1307 Регистрация: 22.9.2003 Где: Odessa, Ukraine Репутация: 2 Всего: 10 |
Ок.... счас.... Только там RxLib используется....
|
|||
|
||||
| beif |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 154 Регистрация: 25.8.2003 Где: Россия, Кемерово Репутация: нет Всего: 1 |
Maverick, а что такое RxLib и где взять?
|
|||
|
||||
| Maverick |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1307 Регистрация: 22.9.2003 Где: Odessa, Ukraine Репутация: 2 Всего: 10 |
1 топ - 1 вопрос... Библиотека компонентов очень распространенная, продвинутая... Поищи по форуму - ссылки на скачку есть... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |