Вопрос № 56347: Доброго времени суток. Необходимо дождаться появления определенного окна чужой программы (основное окно чужой программы открыто, необходимо ждать появление "дополнительного" окна).Насколько я понимаю появление окна соответствует появлению х...Вопрос № 56349: Доброго времени суток. Подскажите как найти хэндл дочернего окна. Т.е. аналог FindWindow для дочерних окон....Вопрос № 56363:
Уважаемые эксперты.
Возникла производственная необходимоть написать прогу которая будет работать с ICQ-протоколом.
Поскажите пожалуйста какими компонентами проще для этого воспользоваться в Delphi 7 или Delphi 2006.
Ну и если можно то хо...Вопрос № 56369: Доброго времени суток.На форме лежат два пустых эдита. Тип обоих Edit, имен не знаю, с помощью FindWindowEx(Hnd, 0,PChar('Edit'), nil) хочу найти хэндл одного из двух эдитов. Как узнать хэндл которого мне вернет функция?...Вопрос № 56392: Здраствуйте уважаемые эксперты
Я пишу проект про криптографию и все исходники у меня на дельфи, но я никак немогу решить одну проблему, мне нужно написать программу которая шифрует строчку одним паролем а разшифровывает другим, и чтобы зная ервый...Вопрос № 56403: Здравствуйте эксперты!!
Опять я к Вам с вопросами!!
У меня очередная проблема!!
Подскажите пожалуйста как можно считывать информацию набранную на клаве для любой программы??
Например если я пишу в блокноте, как перехватить этот текст ...Вопрос № 56411: Здраствуйте. Как подавить реакцию Windows на CTRL+ALT+DEL, ALT+TAB, CTRL+ESC именно в WinXP, пожалуйста с примером!!!...
Вопрос № 56.347
Доброго времени суток. Необходимо дождаться появления определенного окна чужой программы (основное окно чужой программы открыто, необходимо ждать появление "дополнительного" окна).Насколько я понимаю появление окна соответствует появлению хэндла (его ищу FindWindow-сом). Подскажите пожалуста как лудше организовать ожидание чтобы не загружать мое приложение.
Отправлен: 22.09.2006, 13:12
Вопрос задал: VNos (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Прототип для lpfn:
LRESULT CALLBACK CBTProc( int nCode,
WPARAM wParam,
LPARAM lParam
);
Когда nCode == HCBT_CREATEWND, значит что создано новое окно.
wParam - хэндл нового окна.
lParam - указатель на CBT_CREATEWND структуру.
Ответ отправил: n0name (статус: 6-ой класс)
Ответ отправлен: 22.09.2006, 17:44 Оценка за ответ: 5
Вопрос № 56.349
Доброго времени суток. Подскажите как найти хэндл дочернего окна. Т.е. аналог FindWindow для дочерних окон.
Отправлен: 22.09.2006, 13:20
Вопрос задал: VNos (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: n0name
Здравствуйте, VNos!
HWND FindWindowEx(
HWND hwndParent,
HWND hwndChildAfter,
LPCTSTR lpszClass,
LPCTSTR lpszWindow
);
Первый параметр - хендл родительского окна, второй после какого дочернего окна искать.
Ответ отправил: n0name (статус: 6-ой класс)
Ответ отправлен: 22.09.2006, 13:27 Оценка за ответ: 5
Отвечает: Melamed
Здравствуйте, VNos!
Используй функцию EnumChildWindows, которая для каждого дочерного окна вызывает функцию, адрес на которую
передается в параметре данной функции
Ответ отправил: Melamed (статус: 5-ый класс)
Ответ отправлен: 22.09.2006, 13:30 Оценка за ответ: 3
Вопрос № 56.363
Уважаемые эксперты.
Возникла производственная необходимоть написать прогу которая будет работать с ICQ-протоколом.
Поскажите пожалуйста какими компонентами проще для этого воспользоваться в Delphi 7 или Delphi 2006.
Ну и если можно то хоть что-то из документации…
Кому не лень можно прямо отослать мне на E-mail: pepelyaev@pcbk.perm.ru
Отвечает: n0name
Здравствуйте, Пепеляев Александр Павлович!
TICQClient, http://www.torry.net/quicksearchd.php?String=TICQClient&Title=Yes
Есть ещё исходник &RQ.
Ответ отправил: n0name (статус: 6-ой класс)
Ответ отправлен: 22.09.2006, 15:54 Оценка за ответ: 5 Комментарий оценки: Спасибо.
Вопрос № 56.369
Доброго времени суток.На форме лежат два пустых эдита. Тип обоих Edit, имен не знаю, с помощью FindWindowEx(Hnd, 0,PChar('Edit'), nil) хочу найти хэндл одного из двух эдитов. Как узнать хэндл которого мне вернет функция?
Отправлен: 22.09.2006, 16:32
Вопрос задал: VNos (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Н.В.
Здравствуйте, VNos!
По-моему, должна вернуть хэндл того, который первый описан в TForm1.
А вообще, попробуйте найти и что-нибудь в найденном Edit'e изменить.
Удачи!
Приложение:
--------- http://TheDelphi.Ru
Ответ отправил: Н.В. (статус: 5-ый класс)
Ответ отправлен: 22.09.2006, 16:36 Оценка за ответ: 3
Отвечает: n0name
Здравствуйте, VNos!
SetWindowText();
Измени текст найденного едита, и посмотри какой это.
Ответ отправил: n0name (статус: 6-ой класс)
Ответ отправлен: 22.09.2006, 16:52 Оценка за ответ: 4
Отвечает: Melamed
Здравствуйте, VNos!
Функция возвратить хетдл первого едита в Z-порядке, то есть того едита, который раньше получает
фокус ввода или соответстьвенно его свойству TabOrder присвоено меньшее зна
095;ение.
А вообще-то для уверенности проверь получаемый хендл окна с хандлами подозриваемых Edit'ов.
Ответ отправил: Melamed (статус: 5-ый класс)
Ответ отправлен: 22.09.2006, 17:21 Оценка за ответ: 5
Отвечает: Mexes
Здравствуйте, VNos!
Не совсем понятно по поводу незнания имен.
Если это ваши компоненты, можно у них проставить разные поля Tag, и посмотреть, какой именно Edit (из Handle в TControl преобразуется функцией FindControl(Handle: HWnd): TWinControl).
Если при создании Edit-ов Вы не участвуете, выясните косвенно, например, визуально оцените положение (какой Edit выше, левее и т. п.), получите прямоугольник компонента (GetWindowRect) и сделайте вывод в программе, который из них попался.
В общем, найдите отличия (например, TabOrder, он должен быть разный), на основе этого выясните, какой Edit нашелся.
Ответ отправил: Mexes (статус: 3-ий класс)
Ответ отправлен: 22.09.2006, 17:22 Оценка за ответ: 5
Отвечает: Lev
Здравствуйте, VNos!
А как насчет EnumChildWindows в сочетании с проверкой, является ли окно Edit'ом (GetClassName), и проверкой его позиции (GetWindowPlacement) в функции, передаваемой вторым параметром в EnumChildWindows?
Ответ отправил: Lev (статус: 1-ый класс)
Ответ отправлен: 22.09.2006, 19:49
Вопрос № 56.392
Здраствуйте уважаемые эксперты
Я пишу проект про криптографию и все исходники у меня на дельфи, но я никак немогу решить одну проблему, мне нужно написать программу которая шифрует строчку одним паролем а разшифровывает другим, и чтобы зная ервый пароль практически невозможно было вычеслить второй.
Помогите пожалуйста кто чем может, желательно исходником)
Заранее спасибо.
С уважением, Станислав.
Отправлен: 22.09.2006, 22:51
Вопрос задал: Станислав (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Татьяна
Здравствуйте, Станислав!
Тут все на так просто. Это так называемые ассиметричные алгоритмы или алгоритмы с открытом ключом. Думаю вам стоит почитать литературу по этому поводу. Самым ярким представителем данного алгоритма является алгоритм RSA. Нашла готовую длл под дельфи, однако, скажу честно - сама ее работоспособность не проверяла
http://www.listsoft.ru/programs/8704/
Вообще читайте литературу и ищите по ключевым словам "шифрование с открытым ключом", "RSA" и т.п. , думаю проблем с литературой не возникнет
Приложение:
--------- Возможно все. И ничего возможно тоже.
Ответ отправила: Татьяна (статус: Практикант)
Ответ отправлен: 23.09.2006, 20:35
Вопрос № 56.403
Здравствуйте эксперты!!
Опять я к Вам с вопросами!!
У меня очередная проблема!!
Подскажите пожалуйста как можно считывать информацию набранную на клаве для любой программы??
Например если я пишу в блокноте, как перехватить этот текст или в аське пишу что-нибудь??
Зарание спасибо!!
Отправлен: 23.09.2006, 01:08
Вопрос задал: F Ruslan R (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Prosto_Blackhowk
Здравствуйте, F Ruslan R!
Посмотрите статью http://delphiworld.narod.ru/base/hook_keys.html. Там описано, как отловить нажатия клавиш для всех процессов.
Ответ отправил: Prosto_Blackhowk (статус: 2-ой класс)
Ответ отправлен: 27.09.2006, 09:19
Вопрос № 56.411
Здраствуйте. Как подавить реакцию Windows на CTRL+ALT+DEL, ALT+TAB, CTRL+ESC именно в WinXP, пожалуйста с примером!!!
Отправлен: 23.09.2006, 04:54
Вопрос задал: JONSON (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Савенко Вадим Иванович
Здравствуйте, JONSON!
Честно говоря, не очень понятно, то ли Вы хотите скрыть программу, то ли совсем отключить комбинации клавиш. Вот кое-что нашел:
посмотрите, может подойдет. А если нет , воспользуйтесь Яндексом. Например, поиск по фразе " отключить Ctrl+Alt+Del delphi " и т.п.
Ответ отправил: Савенко Вадим Иванович (статус: Студент)
Ответ отправлен: 23.09.2006, 13:31 Оценка за ответ: 5 Комментарий оценки: Спасибо большое, что откликнулись. Я читал что это можно сделать с помощью Хуков, но я не совсем разобрался как с ними работать. Если что-то найдете пишите, буду рад.
Отвечает: Н.В.
Здравствуйте, JONSON!
Добавлю к предыдущему ответу: http://delphi.thedelphi.ru/articles.php?type=hide_process&ID=2. В статье описано скрытие процесса от диспетчера задач в NT-системах.
Удачи!
--------- http://TheDelphi.Ru
Ответ отправил: Н.В. (статус: 5-ый класс)
Ответ отправлен: 23.09.2006, 21:41 Оценка за ответ: 4 Комментарий оценки: Спасибо большое, что откликнулись, но вы нашли не совсем то что мне было нужно наверное из-за того что я плохо объяснил что именно требуется. Мне надо было отключить реакцию на системные комбинации. Я читал что это можно сделать с помощью Хуков, но я не совсем разобрался как с ними работать. Если что-то найдете пишите, буду рад.