With Windows Vista on the horizon, Visual Basics Sendkeys days are numbered. Download the Internet Explorer 7 beta and try Sendkeys with it. You get extra characters in IE7. Send "James Brown" and it comes out "Jammesss BBrownn". Under Vista beta 2, it doesn't work at all. You just get a "permission denied" error.
The only reliable way for Visual Basic programers to send keys in the future will be to use the Windows API, keybd_event function and that can mean a huge amount of re-coding.
Fortunately, M8 can provide a much easier solution.
Keysend.bas and Keysend.vb are modules which wrap Keybd_event into a new sub Sendkey. Sendkey is a direct replacement for the VB Sendkeys. To use it, all you have to do is add the module to your project then replace "Sendkeys" with "Sendkey" in your code. Sendkey interprets all Sendkeys parameters without modification.
In addition to fixing Sendkeys problems, Sendkey also includes the following features not available in the VB Sendkeys:
1. It can send the PrtScr key
2. You can specify that numbers are from the numeric keypad
3. You can set the state of the capslock, numlock and scrollock keys
There are versions for VB5/6 and VB.Net.
|