Key Scripts

 Contents

 

A-PIM can be used to create and execute key scripts, i.e. sequences of keyboard actions useful to automate repetitive program interactions. In other words, with key scripts you can simulate a person typing particular key sequences, with the ability to specify pauses between groups of keystrokes.

 

A key script is a text (to be inserted in an item's content), delimited by the strings "#SCRIPTSTART#" at the beginning, and "#SCRIPTEND#" at the end. Between these delimiters there can be any number of script commands. There are three types of script commands:

 

"RUN=... " to execute a windows "run" command (e.g. to launch an application or open a file)
"KEYS=..." to emulate typing of one or more keyboard keys
"WAIT=<seconds>" to pause for a number of seconds
"WAIT=<seconds>/<title of window to waited for>" to wait until a window with the specified title opens up, or till the specified number of seconds are elapsed (time out)

 

Example:

#SCRIPTSTART#
RUN=http://www.yahoo.com
WAIT=3.5
KEYS={TAB 2}{ENTER}
WAIT=9/yahoo help - search help - microsoft internet explorer
KEYS={TAB 5}finder{ENTER}
#SCRIPTEND#


The above script launches the Internet browser with the URL http://www.yahoo.com, pauses for 3.5 seconds, then types two times the TAB key, then types the ENTER key, then waits up to 9 seconds until a window appears with the title "yahoo help - search help - microsoft internet explorer" (not case sensitive), then types five times the TAB key, then types "finder" followed by ENTER.

 

The script must be inserted in the content of an APO's item, in any position, provided that the delimiter #SCRIPTSTART# is not preceded by any character in the same line.

 

The argument of the KEYS command can be coded using the same rules as the "Sendkeys" statement of Microsoft Visual Basic. The following instructions have been extracted from the Microsoft Visual Basic Help file.

 

 

Each key is represented by one or more characters. To specify a single keyboard character, use the character itself. For example, to represent the letter A, use "A" for string. To represent more than one character, append each additional character to the one preceding it. To represent the letters A, B, and C, use "ABC" for string.

 

The plus sign (+), caret (^), percent sign (%), tilde (~), and parentheses ( ) have special meanings to SendKeys. To specify one of these characters, enclose it within braces ({}). For example, to specify the plus sign, use {+}. Brackets ([ ]) have no special meaning to SendKeys, but you must enclose them in braces. In other applications, brackets do have a special meaning that may be significant when dynamic data exchange (DDE) occurs. To specify brace characters, use {{} and {}}.

 

To specify characters that aren't displayed when you press a key, such as ENTER or TAB, and keys that represent actions rather than characters, use the codes shown below:

 

Key

Code

BACKSPACE

{BACKSPACE}, {BS}, or {BKSP}

BREAK

{BREAK}

CAPS LOCK

{CAPSLOCK}

DEL or DELETE

{DELETE} or {DEL}

DOWN ARROW

{DOWN}

END

{END}

ENTER

{ENTER}or ~

ESC

{ESC}

HELP

{HELP}

HOME

{HOME}

INS or INSERT

{INSERT} or {INS}

LEFT ARROW

{LEFT}

NUM LOCK

{NUMLOCK}

PAGE DOWN

{PGDN}

PAGE UP

{PGUP}

PRINT SCREEN

{PRTSC}

RIGHT ARROW

{RIGHT}

SCROLL LOCK

{SCROLLLOCK}

TAB

{TAB}

UP ARROW

{UP}

F1

{F1}

F2

{F2}

F3

{F3}

F4

{F4}

F5

{F5}

F6

{F6}

F7

{F7}

F8

{F8}

F9

{F9}

F10

{F10}

F11

{F11}

F12

{F12}

F13

{F13}

F14

{F14}

F15

{F15}

F16

{F16}

 

To specify keys combined with any combination of the SHIFT, CTRL, and ALT keys, precede the key code with one or more of the following codes:

 

Key

Code

SHIFT

+

CTRL

^

ALT

%

 

To specify that any combination of SHIFT, CTRL, and ALT should be held down while several other keys are pressed, enclose the code for those keys in parentheses. For example, to specify to hold down SHIFT while E and C are pressed, use "+(EC)". To specify to hold down SHIFT while E is pressed, followed by C without SHIFT, use "+EC".

 

To specify repeating keys, use the form {key number}. You must put a space between key and number. For example, {LEFT 42} means press the LEFT ARROW key 42 times; {h 10} means press H 10 times.

 

Note   You can't use SendKeys to send keystrokes to an application that is not designed to run in Microsoft Windows. Sendkeys also can't send the PRINT SCREEN key {PRTSC} to any application.