I don't know whether anyone else is interested but the following may at least interest Alex who asked whether it is possible to program every Logitech extra key without installing Logitech's driver and software.
Earlier, I thought the answer was No but now I have now found the answer is Yes, using a second method described below, which I think can be made to work with any brand of keyboard and does not require editing the registry. after Alan wrote: >> One mystery is how much faith to put in KeyTrap's scanmode. >> I get the impression that the VK number it returns is always true >> but the scan code might not be. Sean wrote: > I'll e-mail you a tiny app which does a similar job as scanmode. It'll > show more detailed infos than scanmode, however. I think one may > conclude the key indeed doesn't send any scancode if this app doesn't > output any scancode/vkcode for some key either. Thank you Sean, keyview.exe has been a very useful tool. It shows both bytes of the scan code, where scanmode shows only one byte. In the case of single byte codes both tools show the same info. However keyview tells you (and scanmode does not tell you clearly) whether the extra E0 byte is present. That can be confusing because 2C and E0 2C are actually different keys. It appears that, when the Logitech driver is not installed, every Extra key sends a useful scan code but some do not send a useful virtual key code, only the useless FF(255). Further reading of MS documents reveals that after a key is pressed, both the scan code (including its extra byte if present) and vk code are placed in a message buffer. What applications do with that info is up to them. Some apps only respond to those inputs which result in a character. Some relate also to the virtual key numbers, but not the scan codes (for example PP hotkeys). I think KeyTrap scanmode should be able to see both bytes of the scan code, so it's a pity that it only reports one of the bytes. It is possible for a hotkey program to allow you to specify a scan code, instead of a vk code, as the trigger for your hotkey command. That would be very useful for Extra keys which return a unique SC and the useless vk FF(255) (Logitech's Webcam, Messenger/SMS, and all its F keys when F Lock is off, all return 255 as the VK -- with a unique and potentially useful two byte SC). That's why you can only set some of the extra keys as PP hotkeys (unless you install the logitech driver and edit the registry) because PowerPro hotkeys can only be attached to a vk. AutoHotkey can customise every Extra key even when none of the Logitech software is installed - "no driver". Of course there is always a driver, if not Logitech's then the system's default keyboard driver is used. The freeware open source AutoHotkey (which is the fabulous new cousin of AutoIt) allows you to set a hotkey for any scan code. You can specify one-byte and extended two-byte SCs. Even more useful: It also has an option to see the pressed key earlier by using a keyboard hook. That can make a significant difference with Logitech keyboards. For example, with no Logitech driver, the MyHome key opens your default browser at its default home page. It *also* sends an sc of E0 32(224 50) and a vk of AC(172). If you set a PP hotkey for vk 172 BOTH things happen -- the browser thing happens and also your hotkey command. If you enable AutoHotkey's keyboard hook and set a hotkey for the MyHome key's scan code, then only the hotkey's command is executed; the browser is not launched. :-) That's one of several advantages gained by getting in as early as possible in the chain of events after a key is pressed. Note: Before testing another hotkey app, first do the PowerPro command: Exec Hotkeys off AutoHotkey's keyboard hook acts by interrupting the system's default keyboard driver. It has those advantages of Logitech's driver which are most useful to power users (you can program every extra key to do anything) without the bloat, thus using less memory and maybe also less cpu overhead. Conclusion: Having learned to use PowerPro, I am too lazy to learn another scripting program with similar powers, so I shall use the Logitech+Regedit+PowerPro solution. However you may wish to consider two possible ways to program every extra key: - using Logitech's driver and virtual PP hotkeys, as described in the document I uploaded, which requires editing the registry. - not installing Logitech's software and using an AutoHotkey script to interrupt the default keyboard driver, which does not require editing the registry. Autohotkey has a comprehensive scripting language which can do many things, not just run notepad! It doesn't have the same well designed gui like pproconf for setting hotkeys but its scripts (which can set hotkeys, among other things) are easy to write and well documented: #InstallKeybdHook sc112::Run notepad.exe c:\folder\filename.txt, c:\workdir, max sc165::Run calc.exe sc15f::MsgBox, You pressed the User/Sleep key which can also include multiline responses to a keypress with if(condition) logic, etc. I think the AutoHotkey method could be made to work just as easily with any brand of keyboard, such as MS, including those where it is not so easy to understand and tweak its registry settings. AutoHotkey also has its own easy way of telling you the correct scan code parameter for any of the Extra keys, just by pressing the "mystery key" in question, giving similar info to keyview. [sc165 signifies E0 65 ; sc065 signifies 65 without the E0] Another thing which makes the AutoHotkey method easier to setup than the method using Logitech's software is that you don't have to choose spare scan codes and spare VKs. You just use the existing unique scan codes which are already attached to each key, and don't have to choose a VK. The only disadvantage is learning a new script language. That could be minimised by using AutoHotkey only for its simple commands and running your familiar PP scripts for more complex operations: sc165:powerpro.exe [EMAIL PROTECTED] Maybe the sanest option is to use neither method and make do with a keyboard which is only semi-customisable :) Attention: PowerPro's Web site has moved: http://www.ppro.org Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/power-pro/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
