Как мне кажется, лучший способ - проверить ClassName hwnd, который я получил в Application.Onmessage.
Это похоже на «отключение контекстного меню» на основе имени класса «Internet_Explorer_Server».
См. Пример:
procedure TDDGoogleMapsObject.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
var
szClassName: array[0..255] of Char;
const
ie_name = 'Internet Explorer_Server';
begin
if Msg.message = WM_KEYDOWN then
if Msg.wParam = VK_F5 then begin
GetClassName(Msg.HWND, szClassName, SizeOf(szClassName));
if lstrcmp(@szClassName[0], @ie_name[1]) = 0
then Handled := True;
if not Handled
then beep;
end;
end;
Здесь можно проверить источник ключа VK_F5. Если это из окон IE, то мы отключаем его.
Еще один случай, когда мы позволяем это подтолкнуть ...
Спасибо за вашу помощь:
дд