Вниз
Скачать: CL | DM;

Своя иконка возле кнопок свернуть,развернуть, закрыть   Найти похожие ветки 

 
ychenick ©   (2006-06-01 01:45) [0]

Приветсвую вас, мастера!
Необходимо поместить кнопк в заголовок ЧУЖОГО окна рядом с кнопками свернуть,развернуть, закрыть(хендел окна известен). Так же нужно написать обработчик этой кнопки на чужом окне. Еще на кнопке должен быть изображон графический рисунок.

Буду благодарен, тем кто поможет исходным кодом, решающим, хотя бы частично, поставленную задачу.


 
StriderMan ©   (2006-06-01 15:34) [1]

в заголовок наверное нереально без переписывания системных DLL

А вот в чужое окно подложить свою форму - у меня получилось
СвояФорма.ParentWindow := ХэндлЧужогоОкна;


 
DVM ©   (2006-06-01 17:09) [2]


> в заголовок наверное нереально без переписывания системных
> DLL

Реально.
1) Внедриться в адресное пространство процесса чужого окна.
2) Подменить оконную процедуру.
3) Ловить сообщения рисования заголовка
4) Рисовать чего угодно.


 
ychenick ©   (2006-06-01 17:16) [3]

антивирусы такое секут -  внедрение в чужое адресное пространство  =(
Мне кажется все можно проще через WinAPI реализовать....


 
tesseract ©   (2006-06-01 17:20) [4]


> антивирусы такое секут -  внедрение в чужое адресное пространство
>  =( Мне кажется все можно проще через WinAPI реализовать.
> ...

Мдям. А что в delphi появился компонет для внетрения в чужое адресное пространство?

Антивирусы секут запись в код, А посадить иконку на панельку можно.


 
DVM ©   (2006-06-01 17:21) [5]


> антивирусы такое секут -  внедрение в чужое адресное пространство

Не секут. Эксплорер, между прочим, тоже внедряется (хук ставит WH_SHELL) и ничего.


 
n0name   (2006-06-01 19:41) [6]

Знаешь C?
Могу скинуть пример.


 
ychenick ©   (2006-06-05 17:42) [7]

tesseract ©
Мдям. А что в delphi появился компонет для внетрения в чужое адресное пространство?

Не, не появился, но при прямой работе с памятью можно и такое зачудить

DVM ©
Не секут. Эксплорер, между прочим, тоже внедряется (хук ставит WH_SHELL) и ничего.


Не знаю, у меня нод сичет. А эксплорер - это исключение.

С знаю совсем немного, но за примерчик буду благодарен. Скинь на указанное мыло, только слеши поубирай в адресе ;)


 
tesseract ©   (2006-06-05 17:46) [8]


> Не секут. Эксплорер, между прочим, тоже внедряется (хук
> ставит WH_SHELL) и ничего.

Хук и запись в память процесса разные вещи.


 
DVM ©   (2006-06-06 10:06) [9]


> Хук и запись в память процесса разные вещи.

А где я сказал, что это одно и то же?


 
ychenick ©   (2006-06-06 16:25) [10]

И все же, как создать кнопку в заголовке ЧУЖОГО окна?

Допустим, обработать ее нажатие мы сможем поставив хук и перехватывая сообщения.


 
Игорь Шевченко ©   (2006-06-06 17:17) [11]

ychenick ©   (06.06.06 16:25) [10]

Создать (нарисовать) ее тоже можно, поставив хук и обрабатывая сообщения
WM_SETTEXT, WM_SYSCOMMAND, WM_SETICON, WM_NCPAINT, WM_NCACTIVATE, WM_NCMOUSEMOVE, WM_NCLBUTTONDOWN, WM_INITMENUPOPUP



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
1-1157757381
tio
2006-09-09 03:16
2006.10.22
сделать невидимым процесс своей программы в XP


15-1159506275
vidiv
2006-09-29 09:04
2006.10.22
Визуальная среда для разработки структуры базы данных...


6-1148771339
Ezorcist
2006-05-28 03:08
2006.10.22
По написанию нового компонета от TServerSocket и TClientSocket.


4-1149111939
ychenick
2006-06-01 01:45
2006.10.22
Своя иконка возле кнопок свернуть,развернуть, закрыть


1-1157693465
_Guest_
2006-09-08 09:31
2006.10.22
повторяющееся событие MouseWheel




   Наверх