Message.wParam равен VK_BACKSPACE: клавиша, которую не жал!

Программирование на Pascal

Модератор: trubb

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
malor
ефрейтор
Сообщения: 57
Зарегистрирован: 2007-07-09 20:20:25

Message.wParam равен VK_BACKSPACE: клавиша, которую не жал!

Непрочитанное сообщение malor » 2011-08-09 21:19:49

Есть простейшая программа - форма, на ней TImage и таймер. запускаю ее и начинаю на клаве набивать символы, хаотично, иногда цифры, Enter, Alt+Shift, пробел, вобщем, кнопки на основном участке клавиатуры.
В какой-то момент в программа останавливается на breakpoint'е:
Изображение

8 - это виртуальный код клавиши BackSpace. Но я её не жму! Откуда он взялся?

Изображение

Вот как лог выглядит:
.................etc ........................
wParam: 68 lParam: 2097153
wParam: 70 lParam: 2162689
wParam: 68 lParam: -1071644671
wParam: 83 lParam: -1071710207
wParam: 70 lParam: -1071579135
wParam: 13 lParam: 1073741825
wParam: 13 lParam: -2145648639
wParam: 83 lParam: 2031617
wParam: 70 lParam: 2162689
wParam: 8 lParam: 1
wParam: 8 lParam: -1073741823
wParam: 8 lParam: 1
wParam: 8 lParam: -1073741823
wParam: 83 lParam: 1073741825
wParam: 83 lParam: -1073741823
wParam: 70 lParam: 1073741825
wParam: 70 lParam: -1073741823
wParam: 83 lParam: -2145452031
................etc .........................

Код: Выделить всё

procedure TMainForm.Wndproc(var Message: TMessage);
var
    strLog: AnsiString;
begin

  case Message.Msg of
    WM_KEYDOWN, WM_SYSKEYDOWN, WM_SYSKEYUP, WM_KEYUP:

    begin
      strLog := 'wParam: ' + IntToStr(Message.wParam) + ' lParam: ' + IntToStr(Message.lParam);
    end;

  else
    inherited;
  end;

end;
Как отследить откуда прилетел месидж?

Delphi XE
Вложения
WorkBS.zip
(140.46 КБ) 113 скачиваний

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Message.wParam равен VK_BACKSPACE: клавиша, которую не ж

Непрочитанное сообщение Alex Keda » 2012-01-10 0:41:13

ужоснах =)
Убей их всех! Бог потом рассортирует...