Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Win API


Информационный Канал Subscribe.Ru

RusFAQ.ru: Win API

Выпуск № 089
от 11.09.2004, 20:50

Администратор:
Имя: Калашников О. А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 252
Отправлено ответов: 326
Активность: 129.3 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

eju
Статус: Доверительный
Общий рейтинг: 118.34
[Подробней >>]
SackTap
Статус: Доверительный
Общий рейтинг: 111.61
[Подробней >>]
Gibbel
Статус: Профессиональный
Общий рейтинг: 104.75
URL: Savage Metal Club - жизнь в стиле рок-н-ролл
Телефон: +7 901 710 3146
[Подробней >>]
 
Василевский Александр
Статус: Начальный
Общий рейтинг: 119.04
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 247. Здравствуйте. Кто-нибудь знает, как подсчитывать траффик (локальный, интернет)? Хочется написать что... (ответов: 1)
Вопрос № 248. Добрый день Эксперты!!! Помогите: у меня создан редактор и в нем я проверяю нажатие клавиатуры. Если... (ответов: 1)
Вопрос № 249. Здрасте, уважаемые. Вопрос таков. Система NT. Приложение MFC - Dialog Based. Необходимо, чтобы это п... (ответов: 2)

Вопросов: 3, ответов: 4


 Вопрос № 247

Здравствуйте. Кто-нибудь знает, как подсчитывать траффик (локальный, интернет)? Хочется написать что-то типа DUMeter.



Вопрос отправлен: 02.09.2004, 20:00
Отправитель: Alex

[Следующий вопрос >>] [Список вопросов]

Отвечает eju

Добрый день, Alex!
Используй библиотеку WinCap очень удобная либа для работы с сетевым интерфейсом

Ответ отправлен: 03.09.2004, 10:10
Отправитель: eju


 Вопрос № 248

Добрый день Эксперты!!!
Помогите: у меня создан редактор и в нем я проверяю нажатие клавиатуры. Если допустим нажата 'Tab', то взамен выдать 'Enter'. Когда я посылаю
SendMessage(hEdit,WM_CHAR,0x0D,0);, то выдает много раз 'Enter'. Я уже много что перепробовал, но никак не получается.
Как этого избежать?


Приложение:


Вопрос отправлен: 04.09.2004, 13:33
Отправитель: Alex

[Следующий вопрос >>] [Список вопросов]

Отвечает SackTap

Доброе время суток, Alex!
когда ты посылешь WM_CHAR в окно hEdit, оно генерирует сообщение EN_UPDATE, повторяется цикл,, пока KeyState не изменится.

Ответ отправлен: 05.09.2004, 10:42
Отправитель: SackTap


 Вопрос № 249

Здрасте, уважаемые.
Вопрос таков.
Система NT.
Приложение MFC - Dialog Based.
Необходимо, чтобы это приложение отследило нажатие кнопки в системе, допустим, F1.
Помогите пожплуйста, очень прошу!
Делал я этот SetWindowsHook(Ex), а он кричался, что не совпадают типы функций. Приведите пожалуйста конкретный пример, если не особо влом.
Заранее пасибки!!



Вопрос отправлен: 07.09.2004, 20:46
Отправитель: ash

[Следующий вопрос >>] [Список вопросов]

Отвечает Gibbel

Приветствую Вас, ash!
Все делается намного проще. Можно зарегистрировать "горячую кнопку" с помощью RegisterHotKey:
BOOL RegisterHotKey(
HWND hWnd, // handle to window
int id, // hot key identifier
UINT fsModifiers, // key-modifier options
UINT vk // virtual-key code
);
В результате, при нажатии на эту кнопку, окну, хэндл которого ты указал в параметре hWnd, будет приходить сообщение WM_HOTKEY (независимо от того, какое окно в настоящий момент времени активно).
По окончании работы не забуть вызвать UnregisterHotKey.

Можешь так же посмотреть сообщения WM_SETHOTKEY и WM_GETHOTKEY - они позволяют задать кнопку, которая будет активизировать указанное окно.

Ответ отправлен: 08.09.2004, 10:07
Отправитель: Gibbel


Отвечает Василевский Александр

Добрый день, ash!
Если я правильно понял, то Вы пытаетесь зарегистрировать свою функцию обработки клавиатуры функцией SetWindowHookEx.
Эта функция будет ругаться, если Вы пытаетесь зарегистрировать метод-член класса.
Если так, то могу предложить решение этой проблемы.
Функции SetWindowHookEx необходима функция со следующим прототипом:
LRESULT CALLBACK KeyboardProc(
int code, // hook code
WPARAM wParam, // virtual-key code
LPARAM lParam // keystroke-message information
);
Все функции-метоы имеют первый параметр - this, указатель на объект класса. Для того, чтобы использовать в качестве перехватчика метод класса можно использовать следующий код
(CClass - это имя класса, которому должна принадлежать функция-перехватчик, HookFunc - собственно функция-перехватчик):
// внутренняя (не метод класса) функция перехватчика
CClass* pClass;
LRESULT _HookFunc( int code, WPARAM wParam, LPARAM lParam )
{
pClass->HookFunc( code, wParam, lParam );
}
// функция-метод класса перехватчик
LRESULT CClass::HookFunc( int code, WPARAM wParam, LPARAM lParam )
{
// ... делаем что хотим
}
// это необходимо добавить в функцию регистрирования перехватчика клавиатуры
...
pClass = this;
SetWindowHookEx( WH_KEYBOARD, _HookFunc, NULL, NULL );
...
После этого, при нажатии на F1 должна вызываться функция CClass::HookFunc.


Ответ отправлен: 08.09.2004, 13:27
Отправитель: Василевский Александр



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (26)
C / C++ (17)
Perl (6)
Builder / Delphi (12)
Pascal (20)
Basic / VBA (5)
Java / JavaScript (5)
PHP (15)
Криптография (7)
WinAPI (13)
Радиоэлектроника (11)
Пользователю
Windows 95/98/Me (47)
Windows NT/2000/XP (63)
"Железо" (41)
Поиск информации (19)
Администратору
Windows NT/2000/XP (40)
Linux / Unix (15)
Юристу
Гражданское право (10)
Семейное право (7)
Трудовое право (9)
КоАП (7)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование


Яндекс цитирования
© 2001-2004 Россия, Москва. Идея, дизайн, программирование: Калашников О.А. ICQ: 68951340
При перепечатке материалов ссылка на данный сайт обязательна!

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.winapifaq
Отписаться

В избранное