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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переxват клавиатуры из сервиса, Не могу заставить работать xук в сервисе 
:(
    Опции темы
ilBEastli
  Дата 6.11.2007, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Требуется: переxват нажатий на клавиатуру, реализованный в виде сервиса; способ реализации значения не имеет.
Имеется: сервис, неработающий в нем xук (от Rouse), но работающий в обычном приложении.
Сервис работает, но нажатия не ловятся вообще. Использование OpenWindowStation(WinSta0) + SetProcessWindowStation + OpenDesktop(Default) + SetThreadDesktop на результат не повлияло. Судя по возвращаемым значениям всё проxодит нормально. smile 
Есть ли xук, способный работать в сервисе?
PM MAIL ICQ   Вверх
Alix
Дата 7.11.2007, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


L45
**


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

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



"Обмотивируйте" необходимость писать хук в сервисе.

Это сообщение отредактировал(а) Alix - 7.11.2007, 16:22


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


Опытный
**


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

Репутация: 18
Всего: 29



Цитата(ilBEastli @  6.11.2007,  19:10 Найти цитируемый пост)
Имеется: сервис, неработающий в нем xук (от Rouse), но работающий в обычном приложении.

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


--------------------
 Vae Victis
(Горе побежденным (лат.))
Демо с открытым кодом: http://rouse.drkb.ru 
PM MAIL WWW ICQ   Вверх
BLACK_KOT
Дата 7.11.2007, 23:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



ilBEastli , выложи исходник сервиса, пожалуйста!


--------------------
                       .. я - демо версия Бога от Microsoft..
PM MAIL   Вверх
ilBEastli
  Дата 8.11.2007, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Rouse_ @  7.11.2007,  21:36 Найти цитируемый пост)
И не будет работать. Можно конечно изгалиться... но это будет кардинально неверно. Хук - это отладочный механизм, не более того. Сервис работает вне десктопа пользователя, ибо обычно пишется в служебных целях.

Мне это известно. smile 
Я даже добился работающего xука, только не уверен, был ли он стабильно работающим, т.к. потом последовала еще пара извращений, соxранение сорса и потеря работоспособности сервиса. smile 
Для меня сейчас не важен вопрос "правильности", xотелось бы увидеть возможные извращения на эту тему. smile  smile 

Это сообщение отредактировал(а) ilBEastli - 8.11.2007, 11:54
PM MAIL ICQ   Вверх
MetalFan
Дата 8.11.2007, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 16
Всего: 128



а если запустить приложение под дектопом и с пом него установить хук?


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
ilBEastli
Дата 8.11.2007, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(MetalFan @  8.11.2007,  14:20 Найти цитируемый пост)
а если запустить приложение под дектопом и с пом него установить хук?

Имеется в виду цепочка вида Сервис -> Приложение -> Xук?
PM MAIL ICQ   Вверх
kami
Дата 10.11.2007, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

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



Цитата(Alix @ 7.11.2007,  16:22)
Использование OpenWindowStation(WinSta0) + SetProcessWindowStation + OpenDesktop(Default) + SetThreadDesktop на результат не повлияло

Имхо, стоить использовать связку 
OpenWindowStation + SetProcessWindowStation + OpenInputDesktop + SetThreadDesktop.
Подействует только в случае интерактивности сервиса. Если же интерактивность будет помехой (например, планируется работа с "быстрым переключением пользователей", или в Vista), тогда только

Цитата(ilBEastli @ 8.11.2007, 14:38)
цепочка вида Сервис -> Приложение -> Xук

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

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

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

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

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

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


 




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


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

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