Быстрый поиск
Введите фрагмент названия статьи для поиска
Портативное зарядное устройство Xiaomi Power Bank 16000mAh
27.03.2015 | Категория: Обзоры техники | Автор: ManHunter
Портативное зарядное устройство Xiaomi Power Bank
Уже не первый год китайская фирма Xiaomi занимает одно из ведущих мест в списке производителей портативной электроники и сопутствующей периферии к ней. Отечественному покупателю наверняка хорошо известны их смартфоны и портативные зарядные устройства. Вот и я решил приобрести новый внешний аккумулятор повышенной емкости Xiaomi Power Bank 16000mAh в дополнение к уже имеющимся у меня аналогичным девайсам.
Читать статью целиком »
Просмотров: 10454 | Комментариев: 18
Обработка сообщений от клавиатуры в DialogBox
22.03.2015 | Категория: Образ мышления: Assembler | Автор: ManHunter
При разработке софта я столкнулся с таким неприятным явлением, что диалоговые окна, созданные функциями типа DialogBoxParam, не обрабатывают сообщения от клавиатуры. К таким сообщениям относятся, например, WM_KEYDOWN, WM_CHAR и WM_SYSKEYDOWN. При этом, если создать диалоговое окно функцией типа CreateWindowEx, то к нему сообщения проходят нормально. Это странное поведение связано с тем, что клавиатурные сообщения передаются напрямую элементам управления, находящимся в диалоговом окне, но не передаются самому окну. Чтобы использовать горячие клавиши, можно регистрировать их через RegisterHotKey, а затем обрабатывать сообщение WM_HOTKEY, но это очень плохое решение. Во-первых, комбинация клавиш уже может быть зарегистрирована другой программой, а во-вторых, использовать глобальные горячие клавиши для нужд локального окна - дурной тон.Есть более гибкое и универсальное решение, основанное на установке в своем процессе хука на сообщения (функция SetWindowsHookEx с параметром WH_GETMESSAGE), который будет дублировать все сообщения от клавиатуры на диалоговое окно. Перехватчик можно устанавливать как до открытия диалогового окна, так и при его инициализации, все зависит от поставленной задачи. Мне больше нравится второй вариант.
Code (Assembler) : Убрать нумерацию
- ; Обработчик сообщений диалогового окна
- cmp [msg],WM_INITDIALOG
- je .wminitdialog
- cmp [msg],WM_CLOSE
- je .wmclose
- ...
- .wminitdialog:
- ...
- ; Сохранить хэндл диалогового окна
- mov eax,[hwnddlg]
- mov [hwmain],eax
- ; Установить хук на обработку сообщений
- invoke GetCurrentThreadId
- invoke SetWindowsHookEx,WH_GETMESSAGE,GetMessageProc,NULL,eax
- ; Сохранить хэндл хука
- mov [hook],eax
- ...
- .wmclose:
- ...
- ; Снять хук с обработки сообщений
- invoke UnhookWindowsHookEx,[hook]
- ...
Читать статью целиком »
Просмотров: 5372 | Комментариев: 11
Мясные кексы
21.03.2015 | Категория: А еще я туда ем! | Автор: ManHunter
Мясные кексы
Вариант второго блюда на тот случай, когда котлеты уже надоели или хочется удивить своих близких чем-нибудь необычным. Лакомство для настоящих мужчин, ведь "Нет цветов с такой красой, чтобы пахли колбасой!" :) Ну а заодно я проверю в деле новые силиконовые формочки для выпечки.
Читать статью целиком »
Просмотров: 4655 | Комментариев: 6
Выставка художественной куклы и живописи "Легенды Востока"
16.03.2015 | Категория: Жизнь в оффлайне | Автор: ManHunter
Выставка художественной куклы и живописи "Легенды Востока"
Мир Востока, его чарующий колорит и экзотическая красота во все времена и эпохи были бесконечно привлекательны для европейцев, стремившихся уловить его загадочность, окунуться в яркие краски, вдохнуть пряных ароматов, почувствовать себя в настоящей восточной сказке. На выставке "Легенды Востока" художники-кукольники представили свое видение ориентальной темы, воплотив ее в коллекции авторских кукол.
Читать статью целиком »
Просмотров: 4046 | Комментариев: 1
Исследование защиты программы Smart Reversi
10.03.2015 | Категория: Темная сторона Силы | Автор: ManHunter
Скриншот программы Smart Reversi
Еще одна разновидность моей любимой игры в реверси - Smart Reversi. Игра выпущена уже давно, больше десяти лет назад, но для меня это значения не имеет. Игра классная, логика компьютера скучать не дает. Если бы не различные ограничения в триальной версии и необходимость покупки лицензии, то было бы вообще идеально.
Читать статью целиком »
Просмотров: 5035 | Комментариев: 7