On-line: guests 0. In total there are: 0 [information..]
AuthorTopic
moderator




Post №: 5175
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 06.06.11 14:13. Post subject: [АНОНС] Новая версия Mouse Hunter 1.71


Выпущена новая версия Mouse Hunter 1.71


Выложил сабж - Mouse Hunter - бесплатная утилита, которая оптимизирует работу с мышью... (читать далее), про который говорил здесь...






 quote:

Есть в Aml Pages такая фигня, как умный mouse wheel, когда по вращению колесика мыши скроллится не панель с фокусом ввода (панель, которая будет принимать клавиатурный ввод), а панель именно под курсором мыши.

Дык вот написана отдельная тулза, которая оный фокес-покес распространяет на всю систему Windows (благо надоело лажаться в остальных программах). Писалось что называется на интерес, софтина фришная.

Рабочее название Mouse Hunter (сдвоенная система: очень тонкий агент, который выполняет всю полезную работу, и отдельный exe-шник на модной библиотеке для конфигурирования. Потому и отдельный, что для модного интерфейса настроек. В момент выполнения полезной работы сама "модная" библиотека не нужна).

Кому нить надо такое софтино? Могу выложить на сайт?

Тока эта... (C) Чего там в описании писать, бог его знает... Ну не филолог я Может народ поможет?



Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply
Replys - 240 , page: 1 2 3 4 5 6 7 8 9 10 11 12 All [new only]





Post №: 1093
Joined: 16.04.10
Location: Cеверная столица
Rank: 0
link post  Posted: 06.10.11 23:35. Post subject: Carc пишет: Дык я ..


Carc пишет:

 quote:

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


Домотканные и посконные пускай из меню вызывают, а мы - знающие и продвинутые - будем пользоваться средней кнопкой!

"Если хочешь указать на ошибки, то сначала похвали"
(х/ф "Обыкновенное чудо")
Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5446
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 07.10.11 01:29. Post subject: DenisSMI пишет: Дом..


DenisSMI пишет:

 quote:
Домотканные и посконные пускай из меню вызывают, а мы - знающие и продвинутые - будем пользоваться средней кнопкой!


В общем, извернулся я...
Будет обработка и двойного, и одиночного клика... Скоро выложу.

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Post №: 1098
Joined: 16.04.10
Location: Cеверная столица
Rank: 0
link post  Posted: 07.10.11 03:19. Post subject: Carc пишет: В общем..


Carc пишет:

 quote:
В общем, извернулся я...
Будет обработка и двойного, и одиночного клика... Скоро выложу.




"Если хочешь указать на ошибки, то сначала похвали"
(х/ф "Обыкновенное чудо")
Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5447
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 07.10.11 03:21. Post subject: http://forum24.ru/gi..



 quote:




В смысле уже выложил... там по дате видно, разве что номер сборки сменился..

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Post №: 1100
Joined: 16.04.10
Location: Cеверная столица
Rank: 0
link post  Posted: 07.10.11 03:32. Post subject: Carc пишет: В смысл..


Carc пишет:

 quote:
В смысле уже выложил... там по дате видно, разве что номер сборки сменился..


Всё отлично. Спасибо. Изворот удался

"Если хочешь указать на ошибки, то сначала похвали"
(х/ф "Обыкновенное чудо")
Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5451
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 07.10.11 04:51. Post subject: Там только с интерва..


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

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Post №: 1106
Joined: 16.04.10
Location: Cеверная столица
Rank: 0
link post  Posted: 15.10.11 21:17. Post subject: Постоянно перестает ..


Постоянно перестает работать. Нужно заново вызывать главное окно, нажимать на ОК и тогда все опять в порядке.

"Если хочешь указать на ошибки, то сначала похвали"
(х/ф "Обыкновенное чудо")
Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5459
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 16.10.11 12:27. Post subject: DenisSMI пишет: Пос..


DenisSMI пишет:

 quote:
Постоянно перестает работать. Нужно заново вызывать главное окно, нажимать на ОК и тогда все опять в порядке.


Да, странно - но иногда такое происходит. Обычно достаточно сделать ВКЛ\ВЫКЛ по иконке.
Не пойму отчего это происходит...

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Post №: 7
Joined: 12.10.10
Rank: 0
link post  Posted: 25.10.11 13:02. Post subject: а можно добавить фич..


а можно добавить фичу горизонтальной прокрутки ?
например так:
просто колесико мышки => вертикальная прокрутка
колесико мышки + горячая клавиша => горизонтальная прокрутка

Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5503
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 25.10.11 13:26. Post subject: DrakonHaSh пишет: а..


DrakonHaSh пишет:

 quote:
а можно добавить фичу горизонтальной прокрутки ?
например так:
просто колесико мышки => вертикальная прокрутка
колесико мышки + горячая клавиша => горизонтальная прокрутка


Прокрутки чего именно?

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5504
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 25.10.11 13:27. Post subject: И какая клавиша? Как..


И какая клавиша? Какая нить ctrl к примеру?

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Post №: 8
Joined: 12.10.10
Rank: 0
link post  Posted: 25.10.11 14:18. Post subject: Carc пишет: Прокрут..


Carc пишет:

 quote:
Прокрутки чего именно?


содержимого контрола над которым находится курсор.
сейчас Mouse Hunter, если можно так выразится, воздействует на вертикальную прокрутку, я предлагают добавить дополнительно фичу "воздействия" на горизонтальную прокрутку.

Carc пишет:

 quote:
И какая клавиша? Какая нить ctrl к примеру?


лучше сделать эту клавишу настраиваемой. ctrl+колесико мыши часто используется для изменения масштаба. нажатие Alt вызывает обычно меню. Поэтому наверное Shift по дефолту был бы самым беспроблемным вариантом.

Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5506
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 25.10.11 14:27. Post subject: DrakonHaSh пишет: л..


DrakonHaSh пишет:

 quote:
лучше сделать эту клавишу настраиваемой. ctrl+колесико мыши часто используется для изменения масштаба. нажатие Alt вызывает обычно меню. Поэтому наверное Shift по дефолту был бы самым беспроблемным вариантом.


ОК, подумаю...

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 1 
ProfileQuote Reply



Guest
Joined: 01.01.70
link post  Posted: 17.11.11 07:21. Post subject: Хук слетат в момент ..


Хук слетат в момент закрытия какого-нибудь приложения. Почему - не разобрался.
Кстати, Carc, зачем используешь file mapping? Если только чтобы хэндл хука передать, то на NT линейке можно обойтись без него.
Если я правильно понял, ты удаляешь оригинальные WM_MOUSEWHEEL с помощью PeakMessage. Зачем?
И еще, "уточнение" окна под курсором путем поиска наименьшего в этой точке, принадлежащего тому же родителю - не самый точный способ. Хотя и лучше чем просто WindowFromPoint.

Спасибо: 0 
Quote Reply
moderator




Post №: 5541
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 17.11.11 11:47. Post subject: GrelVl пишет: Хук с..


GrelVl пишет:

 quote:
Хук слетат в момент закрытия какого-нибудь приложения. Почему - не разобрался.


Как ты это определяешь?

GrelVl пишет:

 quote:
Кстати, Carc, зачем используешь file mapping? Если только чтобы хэндл хука передать, то на NT линейке можно обойтись без него.


Нет, хук ему и проще можно передать. Это нужно чтобы передавать классы окон для pessimisctic strategy (для optimistic по идее можно и без них обойтись).

GrelVl пишет:

 quote:
Если я правильно понял, ты удаляешь оригинальные WM_MOUSEWHEEL с помощью PeakMessage. Зачем?


Оно ж в таргетное окно летит, а я его оттуда вынимаю, и пересылаю куда нужно. Зачем тогда отправлять его и с в изначальное окно?

GrelVl пишет:

 quote:
И еще, "уточнение" окна под курсором путем поиска наименьшего в этой точке, принадлежащего тому же родителю - не самый точный способ. Хотя и лучше чем просто WindowFromPoint.


Ну а какие мысли вслух: WindowFromPointХХ - частенько лажают, AccessibleObjectFromPoint - мысль, не пробовал, но нах, а если IAcessible не вернется потому как какое-нить китайское полудуро вроде Оперы даже и не представляет что это такое?
Я других вариантов вроде бы не вижу...

PS: весьма любопытные замечания. Откуда дровишки, если не секрет? И как определяешь что хук слетел? WH_DEBUG?

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Guest
Joined: 01.01.70
link post  Posted: 17.11.11 13:42. Post subject: Carc пишет: И как о..


Carc пишет:

 quote:
И как определяешь что хук слетел? WH_DEBUG?


Да нет, просто есть у меня тузла, которая показывает какие модули какие хуки установили. В ней вижу, что SMW.dll установил WH_GETMESSAGE. Также вижу, что SMW.dll пропадает из списка, когда закрывается какое-то приложение.
Carc пишет:

 quote:
Оно ж в таргетное окно летит, а я его оттуда вынимаю, и пересылаю куда нужно.


Так вынимать не обязательно, достаточно вернуть результат твоего обработчика ловушки, отличный от 0. Так стоп, у тебя же хук на GetMessage, а он не позволяет отменить сообщение. Ну тогда все нормально. А я, когда этим хуком пользовался, для отмены сообщения просто заменял его на WM_NULL. Благо, модифицировать сообщения этот хук позволяет.
По поводу определения окна под курсором, я долго бился над этой проблемой. И как это не смешно, но просветлление пришло после прочтения одной из статей из серии для чайников. В ней рассказывалось о классах окон в Windows и о том, на что они влияют. Вобщем алгоритм я вывел, но он получился громоздким и неслабо грузил процессор. И дело не в том, что код не оптимален, просто там приходится многократно в цикле вызавать несколько api. И наверное, другого способа точно определить окно под курсором нет. Зато окна определяет так, что некоторым платным тузлам и не снилось. По ходу такой же алгоритм использует и KatMouse. Кстати, на мой взгляд KatMouse - лучшая прога подобного рода именно с точки зрения технической реализации. Про ее юзабилити я не буду говорить, многим она не нравится, но то, с какой легкостью автору удалось разрешить некоторые технические проблемы, впечетляет. Я декомпилил ее, но листинг получися ужасно читаемым. От попытки его понять в голове образровалась каша, однако некоторые моменты отложились и потом, когда я до чего-то доходил сам, то вдруг понимал, что в KatMouse именно так и сделано.
Ну ты уже наверное понял, что MouseHunter а тоже декомпилил. Результат конечно удобочитаемым не назовешь, но разобраться можно.
А вообще я подобную прогу разрабатываю уже давно. Сейчас временная передышка, никак с силами не соберусь.

Спасибо: 0 
Quote Reply
moderator




Post №: 5543
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 17.11.11 14:50. Post subject: GrelVl пишет: Да не..


GrelVl пишет:

 quote:
Да нет, просто есть у меня тузла, которая показывает какие модули какие хуки установили. В ней вижу, что SMW.dll установил WH_GETMESSAGE. Также вижу, что SMW.dll пропадает из списка, когда закрывается какое-то приложение.


Что за тулза, если не секрет? Архинаиполезнейший же Вам доложу (С) струмент же в работе?

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply
moderator




Post №: 5544
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 17.11.11 14:55. Post subject: GrelVl пишет: Ну т..


GrelVl пишет:

 quote:
Ну тогда все нормально. А я, когда этим хуком пользовался, для отмены сообщения просто заменял его на WM_NULL. Благо, модифицировать сообщения этот хук позволяет.


Да, пожалуй это будет логичнее как-то.

GrelVl пишет:

 quote:
По поводу определения окна под курсором, я долго бился над этой проблемой. И как это не смешно, но просветлление пришло после прочтения одной из статей из серии для чайников. В ней рассказывалось о классах окон в Windows и о том, на что они влияют. Вобщем алгоритм я вывел, но он получился громоздким и неслабо грузил процессор. И дело не в том, что код не оптимален, просто там приходится многократно в цикле вызавать несколько api. И наверное, другого способа точно определить окно под курсором нет. Зато окна определяет так, что некоторым платным тузлам и не снилось. По ходу такой же алгоритм использует и KatMouse. Кстати, на мой взгляд KatMouse - лучшая прога подобного рода именно с точки зрения технической реализации. Про ее юзабилити я не буду говорить, многим она не нравится, но то, с какой легкостью автору удалось разрешить некоторые технические проблемы, впечетляет. Я декомпилил ее, но листинг получися ужасно читаемым. От попытки его понять в голове образровалась каша, однако некоторые моменты отложились и потом, когда я до чего-то доходил сам, то вдруг понимал, что в KatMouse именно так и сделано.




Хм, а классы тут причем?
Как бы для чего: прозрачность или что? есть кое-какие идее про слать WM_HITTEST но до ума я эти мысли так и не довел...

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply



Guest
Joined: 01.01.70
link post  Posted: 17.11.11 15:39. Post subject: Carc пишет: Хм, а к..


Carc пишет:

 quote:
Хм, а классы тут причем?


Сейчас уже и сам не вспомню, но здесь главное разобраться с классом WS_CLIPSIBLINGS. Его наличие/отсутствие сильно влияет на z-order окна. А вообще мой код ищет самого верхнего родителя того что под курсором, а потом начинает перебирать его детей, выполняя при этом кучу проверок. Проверки устроены так, что программа проходит единственно верный путь в дереве окон, не заруливая в ненужные ветки. По сути программа обрабатывает дерево плостами, при каждой интерации цикла находя окно, которое визуально находится выше всех на этом уровне вложенности.

Спасибо: 0 
Quote Reply
moderator




Post №: 5548
Joined: 28.05.05
Location: Россия, Москва
Rank: 2
link post  Posted: 17.11.11 15:42. Post subject: GrelVl пишет: Сейча..


GrelVl пишет:

 quote:
Сейчас уже и сам не вспомню, но здесь главное разобраться с классом WS_CLIPSIBLINGS. Его наличие/отсутствие сильно влияет на z-order окна. А вообще мой код ищет самого верхнего родителя того что под курсором, а потом начинает перебирать его детей, выполняя при этом кучу проверок. Проверки устроены так, что программа проходит единственно верный путь в дереве окон, не заруливая в ненужные ветки. По сути программа обрабатывает дерево плостами, при каждой интерации цикла находя окно, которое визуально находится выше всех на этом уровне вложенности.


Да, такой код на каждом шорохе мыша дело тяжелое конечно... Но вроде мой вычислятор по размерам тоже сносно работает: я по моему только раз видел когда он облажался. В принципе для моих задач вроде бы хватает.

Мазов Гоша aka Carc
Русская группа пользователей Aml Pages в Facebook
Личный блог http://nonp.blogspot.com
ICQ: 86905722 (стабильно invisible, так что пишем не дожидаясь)
amlpages@amlpages.com
Спасибо: 0 
ProfileQuote Reply
Replys - 240 , page: 1 2 3 4 5 6 7 8 9 10 11 12 All [new only]
Reply:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Username, Password:      register    
Тему читают:
- user online
- user offline
All times are GMT  3 Hours. Hits today: 15
You can: smiles yes, images yes, types yes, poll no
avatars yes, links on, premoderation off, edit new post no