IMG Home PageIMG ProductsProduct DownloadsOrdering InformationTechnical Support and Frequently Asked QuestionsDeveloper's Corner and UtilitiesAbout IMG
CustomersIMG ResellersMedia InformationIMG Events / Trade ShowsUseful LinksIMG Contact InformationIMG Information / Policies


Macrobat Macro Reference

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).

Windows #define Hex Value Decimal Value Description

VK_LBUTTON 01 1 Left mouse button

VK_RBUTTON 02 2 Right mouse button

VK_CANCEL 03 3 Control-break processing

VK_MBUTTON 03 3 Middle mouse button (3-button mouse)

VK_XBUTTON1 05 5 Windows 2000: X1 mouse button

VK_XBUTTON2 06 6 Windows 2000: X2 mouse button

07 7 Undefined

VK_BACK 08 8 BACKSPACE key

VK_TAB0 09 9 TAB key

0A-0B 10-11 Reserved

VK_CLEAR 0C 12 CLEAR key

VK_RETURN 0D 13 ENTER key

0E-0F 14-15 Undefined

VK_SHIFT 10 16 SHIFT key (Latching key)

VK_CONTROL 11 17 CTRL key (Latching key)

VK_MENU 12 18 ALT key (Latching key / System key)

VK_PAUSE 13 19 PAUSE key

VK_CAPITAL 14 20 CAPS LOCK key

VK_KANA 15 21 IME Kana mode

VK_HANGUEL 15 21 IME Hanguel mode (maintained for compatibility; use VK_HANGUL)

VK_HANGUL 15 21 IME Hangul mode

16 22 Undefined

VK_JUNJA 17 23 IME Junja mode

VK_FINAL 18 24 IME final mode

VK_HANJA 19 25 IME Hanja mode

VK_KANJI 19 25 IME Kanji mode

1A 26 Undefined

VK_ESCAPE 1B 27 ESC key

VK_CONVERT 1C 28 IME convert

VK_NONCONVERT 1D 29 IME nonconvert

VK_ACCEPT 1E 30 IME accept

VK_MODECHANGE 1F 31 IME mode change request

VK_SPACE 20 32 SPACEBAR

VK_PRIOR 21 33 PAGE UP key

VK_NEXT 22 34 PAGE DOWN key

VK_END 23 35 END key

VK_HOME 24 36 HOME key

VK_LEFT 25 37 LEFT ARROW key

VK_UP 26 38 UP ARROW key

VK_RIGHT 27 39 RIGHT ARROW key

VK_DOWN 28 40 DOWN ARROW key

VK_SELECT 29 41 SELECT key

VK_PRINT 2A 42 PRINT key

VK_EXECUTE 2B 43 EXECUTE key

VK_SNAPSHOT 2C 44 PRINT SCREEN key

VK_INSERT 2D 45 INS key

VK_DELETE 2E 46 DEL key

VK_HELP 2F 47 HELP key

"0" (ANSI 0) 30 48 0 key

"1" (ANSI 1) 31 49 1 key

"2" (ANSI 2) 32 50 2 key

"3" (ANSI 3) 33 51 3 key

"4" (ANSI 4) 34 52 4 key

"5" (ANSI 5) 35 53 5 key

"6" (ANSI 6) 36 54 6 key

"7" (ANSI 7) 37 55 7 key

"8" (ANSI 8) 38 56 8 key

"9" (ANSI 9) 39 57 9 key

3A-40 58-64 Undefined

"A" (ANSI A) 41 65 A key

"B" (ANSI B) 42 66 B key

"C" (ANSI C) 43 67 C key

"D" (ANSI D) 44 68 D key

"E" (ANSI E) 45 69 E key

"F" (ANSI F) 46 70 F key

"G" (ANSI G) 47 71 G key

"H" (ANSI H) 48 72 H key

"I" (ANSI I) 49 73 I key

"J" (ANSI J) 4A 74 J key

"K" (ANSI K) 4B 75 K key

"L" (ANSI L) 4C 76 L key

"M" (ANSI M) 4D 77 M key

"N" (ANSI N) 4E 78 N key

"O" (ANSI O) 4F 79 O key

"P" (ANSI P) 50 80 P key

"Q" (ANSI Q) 51 81 Q key

"R" (ANSI R) 52 82 R key

"S" (ANSI S) 53 83 S key

"T" (ANSI T) 54 84 T key

"U" (ANSI U) 55 85 U key

"V" (ANSI V) 56 86 V key

"W" (ANSI W) 57 87 W key

"X" (ANSI X) 58 88 X key

"Y" (ANSI Y) 59 89 Y key

"Z" (ANSI Z) 5A 90 Z key

VK_LWIN 5B 91 Left Windows key (Natural keyboard)

VK_RWIN 5C 92 Right Windows key (Natural keyboard)

VK_APPS 5D 93 Applications key (Natural keyboard)

5E 94 Reserved

VK_SLEEP 5F 95 Computer Sleep key

VK_NUMPAD0 60 96 Numeric keypad 0 key

VK_NUMPAD1 61 97 Numeric keypad 1 key

VK_NUMPAD2 62 98 Numeric keypad 2 key

VK_NUMPAD3 63 99 Numeric keypad 3 key

VK_NUMPAD4 64 100 Numeric keypad 4 key

VK_NUMPAD5 65 101 Numeric keypad 5 key

VK_NUMPAD6 66 102 Numeric keypad 6 key

VK_NUMPAD7 67 103 Numeric keypad 7 key

VK_NUMPAD8 68 104 Numeric keypad 8 key

VK_NUMPAD9 69 105 Numeric keypad 9 key

VK_MULTIPLY 6A 106 Multiply key

VK_ADD 6B 107 Add key

VK_SEPARATOR 6C 108 Separator key

VK_SUBTRACT 6D 109 Subtract key

VK_DECIMAL 6E 110 Decimal key

VK_DIVIDE 6F 111 Divide key

VK_F1 70 112 F1 key

VK_F2 71 113 F2 key

VK_F3 72 114 F3 key

VK_F4 73 115 F4 key

VK_F5 74 116 F5 key

VK_F6 75 117 F6 key

VK_F7 76 118 F7 key

VK_F8 77 119 F8 key

VK_F9 78 120 F9 key

VK_F10 79 121 F10 key

VK_F11 7A 122 F11 key

VK_F12 7B 123 F12 key

VK_F13 7C 124 F13 key

VK_F14 7D 125 F14 key

VK_F15 7E 126 F15 key

VK_F16 7F 127 F16 key

VK_F17 80 128 F17 key

VK_F18 81 129 F18 key

VK_F19 82 130 F19 key

VK_F20 83 131 F20 key

VK_F21 84 132 F21 key

VK_F22 85 133 F22 key

VK_F23 86 134 F23 key

VK_F24 87 135 F24 key

88-8F 136-143 Unassigned

VK_NUMLOCK 90 144 NUM LOCK key

VK_SCROLL 91 145 SCROLL LOCK key

92-96 146-150 OEM specific

97-9F 151-159 Unassigned

VK_LSHIFT A0 160 Left SHIFT key

VK_RSHIFT A1 161 Right SHIFT key

VK_LCONTROL A2 162 Left CONTROL key

VK_RCONTROL A3 163 Right CONTROL key

VK_LMENU A4 164 Left MENU key

VK_RMENU A5 165 Right MENU key

VK_BROWSER_BACK A6 166 Windows 2000: Browser Back key

VK_BROWSER_FORWARD A7 167 Windows 2000: Browser Forward key

VK_BROWSER_REFRESH A8 168 Windows 2000: Browser Refresh key

VK_BROWSER_STOP A9 169 Windows 2000: Browser Stop key

VK_BROWSER_SEARCH AA 170 Windows 2000: Browser Search key

VK_BROWSER_FAVORITES AB 171 Windows 2000: Browser Favorites key

VK_BROWSER_HOME AC 172 Windows 2000: Browser Start and Home key

VK_VOLUME_MUTE AD 173 Windows 2000: Volume Mute key

VK_VOLUME_DOWN AE 174 Windows 2000: Volume Down key

VK_VOLUME_UP AF 175 Windows 2000: Volume Up key

VK_MEDIA_NEXT_TRACK B0 176 Windows 2000: Next Track key

VK_MEDIA_PREV_TRACK B1 177 Windows 2000: Previous Track key

VK_MEDIA_STOP B2 178 Windows 2000: Stop Media key

VK_MEDIA_PLAY_PAUSE B3 179 Windows 2000: Play/Pause Media key

VK_LAUNCH_MAIL B4 180 Windows 2000: Start Mail key

VK_LAUNCH_MEDIA_SELECT B5 181 Windows 2000: Select Media key

VK_LAUNCH_APP1 B6 182 Windows 2000: Start Application 1 key

VK_LAUNCH_APP2 B7 183 Windows 2000: Start Application 2 key

B8-B9 174-185 Reserved

VK_OEM_1 BA 186 Windows 2000: For the US standard keyboard, the ';:' key

VK_OEM_PLUS BB 187 Windows 2000: For any country/region, the '+' key

VK_OEM_COMMA BC 188 Windows 2000: For any country/region, the ',' key

VK_OEM_MINUS BD 189 Windows 2000: For any country/region, the '-' key

VK_OEM_PERIOD BE 190 Windows 2000: For any country/region, the '.' key

VK_OEM_2 BF 191 Windows 2000: For the US standard keyboard, the '/?' key

VK_OEM_3 C0 192 Windows 2000: For the US standard keyboard, the '`~' key

C1-D7 193-215 Reserved

D8-DA 216-218 Unassigned

VK_OEM_4 DB 219 Windows 2000: For the US standard keyboard, the '[{' key

VK_OEM_5 DC 220 Windows 2000: For the US standard keyboard, the '\|' key

VK_OEM_6 DD 221 Windows 2000: For the US standard keyboard, the ']}' key

VK_OEM_7 DE 222 Windows 2000: For the US standard keyboard, the 'single-quote/double-quote' key

VK_OEM_8 DF 223 OEM specific

E0 224 Reserved

E1 225 OEM specific

VK_OEM_102 E2 226 Windows 2000: Either the angle bracket key or the backslash key on the RT 102-key keyboard

E3-E4 227-228 OEM specific

VK_PROCESSKEY E5 229 Windows 95/98, Windows NT 4.0, Windows 2000: IME PROCESS key

E6 230 OEM specific

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

E8 232 Unassigned

E9-F5 233-245 OEM specific

VK_ATTN F6 246 Attn key

VK_CRSEL F7 247 CrSel key

VK_EXSEL F8 248 ExSel key

VK_EREOF F9 249 Erase EOF key

VK_PLAY FA 250 Play key

VK_ZOOM FB 251 Zoom key

VK_NONAME FC 252 Reserved for future use

VK_PA1 FD 253 PA1 key

VK_OEM_CLEAR FE 254 Clear key

FF 255 Reserved


IMG Home PageIMG ProductsProduct DownloadsOrdering InformationTechnical Support and Frequently Asked QuestionsDeveloper's Corner and UtilitiesAbout IMG
CustomersIMG ResellersMedia InformationIMG Events / Trade ShowsUseful LinksIMG Contact InformationIMG Information / Policies


As seen in ...

Yahoo!finance