19.01.2019, 02:15 [+3 UTC]
в нашей команде: 3 337 чел. | участники онлайн: 2 (рекорд: 20)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.64 (07.01.2019)
JS-v.1.31 | CSS-v.3.35

Общие новости:
01.01.2019, 13:54

Форум:
14.01.2019, 10:08

Последний вопрос:
18.01.2019, 19:47
Всего: 148522

Последний ответ:
19.01.2019, 00:57
Всего: 257600

Последняя рассылка:
18.01.2019, 15:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
14.03.2010, 08:09 »
Березин Вадим Юрьевич
Всё понятно, лаконичнои главное приведена юридическая хитрость. Пять! [вопрос № 177218, ответ № 260095]

РАЗДЕЛ • Basic

Создание программ на языке Basic.

[администратор рассылки: Андреенков Владимир (Академик)]

Лучшие эксперты в этом разделе

Megaloman
Статус: Академик
Рейтинг: 281
solowey
Статус: Студент
Рейтинг: 210
Sergey V. Gornostaev
Статус: Специалист
Рейтинг: 111

Перейти к консультации №:
 

Консультация онлайн # 140110
Раздел: • Basic
Автор вопроса: Денисов Сергей Иванович
Отправлена: 17.07.2008, 09:19
Поступило ответов: 1

Не получается поставить глобальный хук на события мыши (да и на клавиши тоже) :(
В форме VBA Excell ставится хук:
hHook = SetWindowsHookEx(WH_JOURNALRECORD, AddressOf HookProc, 0, 0)
но процедура HookProc из модуля не вызывается.
В чем засада?

Приложение:

Состояние: Консультация закрыта

Ответ # 226106 от PsySex (Профессионал)

Здравствуйте, Денисов Сергей Иванович!
К ответу прикрепляю файл с примером.


Консультировал: PsySex (Профессионал)
Дата отправки: 17.07.2008, 15:14

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 140110

PsySex
Профессионал

ID: 848

# 1

= общий = | 17.07.2008, 14:47 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

>>Каждый десятый вопрос на любой VB-конференции звучит приблизительно так: "Как заставить мое приложение реагировать на горячие клавиши, если ни одна его форма не имеет фокуса?" Есть несколько способов решить эту проблему и все они кривые. За исключением одного единственного: надо поставить глобальный хук на клавиатуру (keyboard system wide hook). Однако здесь возникает одна проблема. Вызов функции SetWindowsHookExA должен размещаться в стандартной dll, потому что хук должен инсталлироваться во все активные процессы в системе. Visual Basic, к сожалению, позволяет создавать только ActiveX DLL. Это не совсем одно и то же, так как приложение должно создать экземпляр объекта из класса ActiveX DLL, прежде чем манипулировать его свойствами и методами. Что же делать? Вывод напрашивается печальный, так как он совсем не патриотичный. Нужно писать стандартную dll на каком-нибудь другом языке.
-------------------
Пример реализации DLL интересует? ;-)

Денисов Сергей Иванович

# 2

= общий = | 17.07.2008, 14:53

Да, было бы интересно

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.14246 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.64 от 07.01.2019
Версия JS: 1.31 | Версия CSS: 3.35