The My-T-Soft Macrobat process is the "Macro Batch Processor" that handles action requests from the user interface component (i.e. My-T-Soft). Full support is only available in a Windows system - for other platforms, many of the advanced options are not available.

Macrobat Notes

The Macrobat core is based on code that was part of the pre-2.00 releases of My-T-Soft. Because of this heritage, various advanced capabilities are available, some of which are documented here. Not all supported pre-2.00 actions are available in 2.00 & later releases, and some capabilities may be added over time.

The Build-A-Macro operations, the following double-characters are reserved:

@@ - Signifies an Alt keystroke to follow

e.g. @@f = [Alt-Down]f[Alt-Up]

~~ - Signifies a Ctrl keystroke to follow

^^ - Signifies a Shift keystroke to follow

$$ - used internally for internal macro uses

%% - used to specify a virtual key, or a keyboard scan code

You may not use these character combinations in your macros, unless you use them as outlined. For example, you may quickly create a macro for File, New ([Alt]-F, N) by entering "@@fn" (do not include quote characters) and clicking OK. However, using the Reserved words in brackets is the preferred method.

The %% sequence has 2 options, and must be formed correctly to be interpreted as a special entry. 4 characters must follow the 2 percent signs, spaces are not allowed. When this is used, it generates both the Down and Up keyboard messages, (press & release), similar to the entry of a specific character.

The following general form is: %%cnnn

where c is a character signifying Keystroke or Scancode -

The only valid characters for c are k or s or e (case does not matter) (NOTE: The k in post 2.00 releases should not be used, unless otherwise documented). The nnn must be 3 decimal digits (values between 000 and 999 are valid - for Virtual key codes, only values between 1-254 are valid).

The s and e directives are translated into Virtual key codes, and given to the Windows low-level API calls. Windows CE targets have various limitations, and not all options may be supported. The %%snnn configuration will generate a scan code / keyboard event where nnn is the decimal representation of a Windows Virtual Key (see below). The same applies for the e directive, but the e generates an extended keystroke. (If some or all of these terms are not familiar, then a good review of physical keyboards may be required. For explanations of extended characters, scan codes, reference books that describe the PC hardware, the 84, 101 and 104 key IBM compatible keyboards - good sources are Microsoft references, older Peter Norton books, and books about PC compatible hardware).

Not all virtual key codes are supported for all platforms. Modifier keys such as Ctrl/Shift/Alt, and toggle keys such as Caps Lock / Num Lock / Scroll Lock keys create situations where the down / up resultant keystroke may not be sufficient for your needs (when using these low-level overrides).

Windows CE Notes: For certain keystrokes, use of the %%snnn may be required, especially in the OEM range and for keystrokes after VK_OEM_1.

As an example, the Fujitsu PenCentra Windows CE system will not map function keys (from a physical keyboard) to the 112-123 range, but use OEM (Reserved(!)) keys in the range 193-204 (e.g. to get the F1 key on My-T-Soft to act as the F1 on a physical keyboard use %%s193 - see WCE_KBRD project). The Suspend function uses VK_OEM_8 (%%s223).

For a particular unit, you will either have to contact the manufacturer for their implementation of these "keystrokes", or test the various codes to see what the result is (and if supported).

VK_PACKET E7 231 Windows 2000: Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark in KEYBDINPUT, SendInput, WM_KEYDOWN, and WM_KEYUP