Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как добавить в контекстное меню?


Lord HiTTER ©   (2006-03-13 15:29:00) 

Как добавить новый элемент в контекстное меню полей ввода и обработать его выбор?
P.s Поле ввода находится в другом приложении! Т.е не в нашей программе!
Заранее спасибо


Игорь Шевченко   (2006-03-15 17:07:00) [1]

n0name   (15.03.06 16:21) [10]


> Какие адреса?


Настраиваемые, очевидно, какие же еще. Строки там разные...


Leonid Troyanovsky   (2006-03-15 16:52:00) [2]


> n0name   (15.03.06 16:23) [11]

> Жди, щас kazanova кинет фирменный исходник по испольнению


Дык, мне-то он зачем?

Только, все это лишнее, бо, под конец окажется, что вопрошающий
забыл указать, что имелось ввиду контекстное меню EDIT, то, что
по умолчанию.
И тогда все приседания с хуками и сабклассированием - лишние,
бо показ происходит из DefWindowProc.

Ну, или еще какие-нибудь подробности.
Т.е., задача совершенно неинтересная, на гране моветона,
да и, вдобавок, невнятно изложена. Т.е., обсуждение тянется
лишь по мотивам.

--
Regards, LVT.


n0name   (2006-03-15 16:23:00) [3]


> Ничего страшного.  Просто, менять она ничего не будет

Жди, щас kazanova кинет фирменный исходник по испольнению кода в чужом АП.


n0name   (2006-03-15 16:21:00) [4]


> А ничего, что адреса разные будут ?

Какие адреса?
Локальные переменные через стек реализуются.
Адреса функций WinAPI вручную получать.


Игорь Шевченко   (2006-03-15 11:36:00) [5]

Leonid Troyanovsky ©   (15.03.06 11:28) [8]

Этак каждый гражданин себе веревок настрижет, польт не напасешься.


Leonid Troyanovsky   (2006-03-15 11:28:00) [6]


> Игорь Шевченко ©   (15.03.06 11:06) [7]

> > выделенную в другом процессе, и SetWindowLong

> А ничего, что адреса разные будут ?


Ничего страшного.  Просто, менять она ничего не будет
with GetLastError = access denied, кажись.

Windows NT/2000/XP: You cannot change this attribute if the window does not belong to the same process as the calling thread.

--
Regards, LVT.


Игорь Шевченко   (2006-03-15 11:06:00) [7]


> Ага, не в своем же. Копируй процедуру обработки в память
> выделенную в другом процессе, и SetWindowLong


А ничего, что адреса разные будут ?


n0name   (2006-03-15 09:21:00) [8]


> В другом приложении ?

Ага, не в своем же. Копируй процедуру обработки в память выделенную в другом процессе, и SetWindowLong.
> Мне надо перехватить вылазку контекстного меню и добавить
> в него элемент и обработать его нажатие!

Ну я как раз и написал про это.
Только не забудь потом вызвать первоначальное сообщение, можешь поискать по сабклассингу.


Lord HiTTER   (2006-03-14 17:59:00) [9]

Мне надо перехватитьвылазку контекстного меню и добавить в него элементи обработать его нажатие!


Игорь Шевченко   (2006-03-14 12:03:00) [10]


> Замени стандартную оконную процедуру edit'a.


В другом приложении ?


n0name   (2006-03-14 11:45:00) [11]

Замени стандартную оконную процедуру edit'a.


kaZaNoVa   (2006-03-13 15:55:00) [12]

Удалено модератором


Игорь Шевченко   (2006-03-13 15:32:00) [13]


> Поле ввода находится в другом приложении! Т.е не в нашей
> программе!


Возможно никак.


Наверх

Титульная страница Поиск, карта сайта Написать письмо