Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как добавить свой элемент в интерфейс, чужой проги? 
V
    Опции темы
Lunatikus
Дата 11.10.2007, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 29.6.2007

Репутация: нет
Всего: 6



Здравствуйте.Скажите,возможно ли добавить,например кнопку и обработчик этого элемента в интерфейс сторонней программы,к коду которой доступ запрещен?Получается без того,чтобы делать это отдельным процессом не обойтись?Как тогда сделать его скрытым(чтобы не отображался в панели задач)?И как связаться вообще хотя бы с такими свойствами сторонней программы,как координаты окна?


--------------------
TheSin - небольшое игровое сообщество взрослых и молодых(L2,WoW,Aion,RFonline and other not mmorpg,not computer games).
сайт гильдии
PM MAIL   Вверх
Yanis
Дата 11.10.2007, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Возможно это что то даст: http://wasm.ru/article.php?article=addfunc
Советую ещё комментарии почитать…


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Lunatikus
Дата 11.10.2007, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 29.6.2007

Репутация: нет
Всего: 6



спасибо,но "выдирание" кода не совсем то,что я хотел.Хотя если других вариантов не будет,буду пробовать этот =)По-прежнему висит вопрос о получении визуальных параметров запущенной программы.Какими средствами это возможно,если возможно.Например,зная,координаты расположения и параметры окна проги,можно сделать отдельный модуль,отображающий кнопку в этом окне проги,но не связанный с ним.Я имею в виду псевдослияние со сторонней прогой.Чтобы пользователь видел на ней новые элементы,но не обязательно,чтобы они были в этой проге.


--------------------
TheSin - небольшое игровое сообщество взрослых и молодых(L2,WoW,Aion,RFonline and other not mmorpg,not computer games).
сайт гильдии
PM MAIL   Вверх
Alix
Дата 11.10.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


L45
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 4.5.2005
Где: Pskov/Spb

Репутация: 7
Всего: 23





--------------------
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью (с) Л. Толстой
High tech. Low live. (с) Gardner Dozois
PM MAIL ICQ Skype   Вверх
ivan219
  Дата 11.10.2007, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: 2
Всего: 12



А может эта программа плагины поддержевает???
PM MAIL ICQ   Вверх
Lunatikus
Дата 11.10.2007, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 29.6.2007

Репутация: нет
Всего: 6



нет,мы ничего не знаем о сторонней программе,кроме ее интерфейса,вернее того,что видим перед собой при ее запуске.

Alix, спасибо,что обратил внимание на API-раздел.Буду разбираться,похоже на то,что мне надо.


--------------------
TheSin - небольшое игровое сообщество взрослых и молодых(L2,WoW,Aion,RFonline and other not mmorpg,not computer games).
сайт гильдии
PM MAIL   Вверх
Alix
Дата 11.10.2007, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


L45
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 4.5.2005
Где: Pskov/Spb

Репутация: 7
Всего: 23



Цитата(Lunatikus @  11.10.2007,  15:41 Найти цитируемый пост)

Alix, спасибо,что обратил внимание на API-раздел.Буду разбираться,похоже на то,что мне надо. 

возможно, скоро сделаю пример. вернее переработаю его для демонстрации.


--------------------
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью (с) Л. Толстой
High tech. Low live. (с) Gardner Dozois
PM MAIL ICQ Skype   Вверх
Alix
Дата 11.10.2007, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


L45
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 4.5.2005
Где: Pskov/Spb

Репутация: 7
Всего: 23



Набросал небольшой пример, который подменяет кнопку равно у виндовского калькулятора. Меняет надпись на '<>' и при клике выводит приветствие smile Висит в бэкграунде, как только появляется окно калькулятора - заменяет у него кнопку на свою. Выйти из программы можно по горячим клавишам Ctrl+Alt+F10 (меняется в исходниках, если вдруг у вас уже висит что-то на это сочетание).
Была взята программа Rrader'а, я убрал все лишнее, заточил под calc.exe, отказался от отдельной *.dll для установки хуков (callback'ом хука программа ставит свою wndproc). Так что если вдруг захотите поставить мне плюс - в первую очередь поставьте ему.
Недоработок я в программе пока не замечаю (кроме той, что она не сможет работать если запущено 2 калькулятора, ведь кнопка то одна! хотя при большом желании можно сделать было и массив, но я для простоты кода не стал этого делать), быть может, разве что код стоило оформить покрасивее.

Небольшие пояснения по тому как работает программа. 
1. Создает свое окно
2. Создает кнопку, такую же по позиции, габаритам и стилю, что и в калькуляторе и оставляет ее на этом окне.
3. Регистрирует хук, в частности на создание/удаление окон
4. Как только создалось окно калькулятора, мы прячем старую кнопку равно, а нашей меняем родителя на окно калькулятора. Также меняем кнопке ее WndProc, чтобы можно было отловить клики по ней.
5. Как только окно калькулятора закрывается, мы возвращаем кнопку нашему окну и обратно меняем обработчик.

Вот и все...


Присоединённый файл ( Кол-во скачиваний: 17 )
Присоединённый файл  MyHook.rar 10,67 Kb


--------------------
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью (с) Л. Толстой
High tech. Low live. (с) Gardner Dozois
PM MAIL ICQ Skype   Вверх
Lunatikus
Дата 12.10.2007, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 29.6.2007

Репутация: нет
Всего: 6



спасибо большое за огромную помощь  smile очень помог


--------------------
TheSin - небольшое игровое сообщество взрослых и молодых(L2,WoW,Aion,RFonline and other not mmorpg,not computer games).
сайт гильдии
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0685 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.