We run simulated testing via Flash over the internet to our clients, some simulated environments such as Microsoft Office require us to assess the use of keyboard shortcut keys, control+n for a new windows or ALT + f to open the file menu.
When running within internet Explorer these keys are processed by the browser as well as the Flash player.
We need to prevent keys from doing anything within internet explorer but still allowing them to be processed by the Flash player.
We want to be able to dynamically supply the keys via the PARAM of the ActiveX OBJECT tag ??" blocking keys really isn’t a nice thing to do so we want to specify only the keys required for that specific simulated assessment.
We want to block both single keys (such as A-Z, 1-3, TAB etc) and key combinations using both the Control and ALT keys (such as Control + O, Alt + E etc)
No hooks to be used to capture keystrokes.
Sub Classing the Internet Explorer WndProc would be acceptable.
The ActiveX must work on IE 5.5, 6, 7 & 8, Windows 98, ME, NT, 2000, XP, Vista and 7
This needs to be in an ActiveX control because:
1: Needs to be deployed by visiting the web page.
2: We have a digital signature that we apply to the ActiveX control to certify it comes from us to our customers.
3: This should only affect pages that have the ActiveX control embedded.
4: We already have an ActiveX control which is performing other tasks on the page, and is already trusted by users.
I have included a sample HTML and Flash movie showing key presses, in order for you to test the keys. The Flash movie will show each key combination you type on the keyboard. Where Internet Explorer also uses the keys (list below), the flash movie should function normally but Internet Explorer should ignore the key press.
Keys to test with:
ALT + F - opens file menu
ALT + E - opens edit menu
ALT + V - opens view menu
ALT + A - opens favorites menu
ALT + T - opens tools menu
ALT + H - opens help menu
ALT + D - highlights the URL bar
F1 - opens help dialog
F3 - opens find dialog box
F4 - opens the URL dropdown list
F6 - highlights the URL bar
F10 - highlights the file menu
F11 - opens full screen in ie6
CONTROL + T - opens tab in ie7
CONTROL + J - opens favourites in ie7
CONTROL + D - opens add to favourites