Lazarus, QT и Касперский

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Lazarus, QT и Касперский

Сообщение Ranma » 13.03.2009 12:02:40

Windows XP, Lazarus 0.9.26
Я решил попробовать набросать интерфейс для одной разработки, хотел "чтоб было красиво" - поставил в параметрах компилятора библиотеку QT, скомпилировал, запустил. Очень обрадовался, когда обнаружил, что приложение положительно откликается на запуск с параметром -style=plastique (хотелось, чтобы с минимальными затратами был вид "как в КДЕ").
А дальше я обнаружил странную вещь: если кликнуть по пустому месту на форме, то сразу начинает ругаться Касперский, что моё приложение пытается внедриться во все процессы. Когда я переключил библиотеку виджетов на стандартную win32 - Касперский не реагировал на приложение.
В чём может быть проблема?
Ranma
незнакомец
 
Сообщения: 4
Зарегистрирован: 11.03.2009 10:53:08

Re: Lazarus, QT и Касперский

Сообщение Павел Ишенин » 13.03.2009 12:25:16

Я думаю это из-за того, что когда вы на что-то нажимаете, что имеет стиль csCaptureMouse то LCL просит захватить мышь через вызов SetCapture() в windows. Для Qt SetCapture() делает QWidget::grabMouse(), который внутри библиотеки Qt помимо вызова winapi SetCapture еще и устанавливает SetWindowsHookEx(WH_JOURNALRECORD, ...) который читает сообщения всех приложений.

Я был бы рад избавиться от этого хука и попросить Qt вызвать только SetCapture, но они не сделали такой возможности для простых смертных, хотя сами ею пользуются через приватные методы.
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52

Re: Lazarus, QT и Касперский

Сообщение Ranma » 13.03.2009 17:51:11

Тогда я не совсем понимаю, как в отличие от этого функционирует PyQT? Или дело в событиях классов LCL
Ranma
незнакомец
 
Сообщения: 4
Зарегистрирован: 11.03.2009 10:53:08

Re: Lazarus, QT и Касперский

Сообщение Павел Ишенин » 13.03.2009 20:19:40

PyQT может не требовать захвата мышинных событий, а для LCL - это обычное дело.
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 35

Рейтинг@Mail.ru