Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Работа с чужыми окнами в Delphi 10

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Работа с чужыми окнами в Delphi 10
Имя
Сообщение << Старые топики   Новые топики >>
Работа с чужыми окнами в Delphi 10 - 2008-10-03 22:13:57.880000   
Basher2008

Сообщений: 148
Оценки: 0
Присоединился: 2008-01-27 17:28:11.896666
Такая проблема: читал вот на досуге книжку "Delphi глазами хакера" и решил попробовать один из примеров, а именно "Работа с чужыми окнами", и возникла проблемка, скорее всего изза того, что у меня версия delphi 10, а автор скорее всего проиводил примеры написанные на более старой версии, в общем вот исходник:

program Project1;
uses windows, Messages;
//Эта функция вызывается, когда найдено дочернее окно
function EnumChildwnd(h: hwnd): BOOL; stdcall;
begin
SendMessage(h,WM_SETTEXT,0,lparam(LPCTSTR('][ с тобой1')));
Result:=true;
end;
//Эта функция вызывается, когда найдено главное окно
function EnuinWindowsWnd(h: hwnd): BOOL; stdcall;
begin
SendMessage(h,WM_SETTEXT,0,lparam(LPCTSTR('][ с тобой')));
EnumChildWindows(h,@EnumChildwnd,0);
end;
var
h:THandle;
begin
//Запускаем бесконечный цикл
while true do
begin
//Запускаем перечисление всех окон
EnumWindows(@EnumWindowsWnd,0);
//Делаем задержку в 1000 мс
h:=CreateEvent(nil, true, false, ' ' ) ;
WaitForSingleObject(h, 1000);
CloseHandle(h);
end;
end.


так вот дельфи ругается, и пишет:

"[Pascal Warning] Project1.dpr(14): W1035 Return value of function 'EnuinWindowsWnd' might be undefined"
"[Pascal Error] Project1.dpr(22): E2003 Undeclared identifier: 'EnumWindowsWnd'", при этом указывает на 7 строку снизу, то есть EnumWindows(@EnumWindowsWnd,0), конкретно тыкая курсором после слова @EnumWindowsWnd

Дальше я изменил эту строку: EnumWindows(@EnumWindowsWnd,0); так: EnumWindows(@EnumWindows,0);, то есть удалил Wnd. И оно запустилось, и тут же ругнулся антивирь, мол эта хрень вредряется в другой процесс, ну я его вырубил, а оно всё равно не запускается, и на этот раз пишет:
"Error: Runtime error 218 at 0001009c"
и иногда ещё это: Project c:\Documents and Setting\BASH\мои документы\borland studio project1.exe faulted with message:'access violation at 0x000101c1: write of adress 0x7c90eb94'. Process Stoped. Use Step or Run to contnue. "
Что посоветуете?
Post #: 1
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-03 22:20:20.193333   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
Каспер стоит?
Post #: 2
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-03 22:45:34.580000   
Basher2008

Сообщений: 148
Оценки: 0
Присоединился: 2008-01-27 17:28:11.896666
Нет, вырубил
Post #: 3
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-04 08:54:18.390000   
artemr

Сообщений: 9
Оценки: 0
Присоединился: 2007-12-25 05:09:13.356666
вот это function EnuinWindowsWnd(h: hwnd): BOOL; stdcall; сделай так function EnumWindowsWnd(h: hwnd): BOOL; stdcall;

а это оставь как есть
//Запускаем перечисление всех окон
EnumWindows(@EnumWindowsWnd,0);
Post #: 4
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-04 19:28:49.850000   
Basher2008

Сообщений: 148
Оценки: 0
Присоединился: 2008-01-27 17:28:11.896666
Да, точно, синтаксическая ошибка. Всё заработало, но функциональность проги слабоватая… Надпись ][ c тобой появляется только в дистпечере устройств, а можно ли как нибудь преобразовать прогу чтобы она изменяла заголовки окон проводника?
Post #: 5
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-05 19:04:58.156666   
rasputin

Сообщений: 35
Оценки: 0
Присоединился: 2008-04-15 00:01:57.346666
этот код работает хорошо только под Win9x, под NT он слабоват…
Post #: 6
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-05 19:43:52.173333   
Basher2008

Сообщений: 148
Оценки: 0
Присоединился: 2008-01-27 17:28:11.896666
Ну а предложить кто-нибудь что-нибудь может
Post #: 7
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-05 21:46:43.516666   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
Почитай
http://www.xakep.ru/post/27145/default.asp
там 2 части
Код отлично работает на XP

Post #: 8
RE: Работа с чужыми окнами в Delphi 10 - 2008-10-05 22:47:11.960000   
Basher2008

Сообщений: 148
Оценки: 0
Присоединился: 2008-01-27 17:28:11.896666
Что-то мне кажется, что это совсем не то, но всё равно спасибо, почитаю, может извлеку что нибудь полезное
Post #: 9
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Работа с чужыми окнами в Delphi 10







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.