Macro Express News

January 14, 2011

This is the online edition of the Macro Express News email newsletter. You can have future editions delivered directly to your email inbox. Visit the Macro Express News page to subscribe or to view past issues.

Macro Express v ME Pro

Macro Express Pro v is now available from This release of Macro Express Pro contains several enhancements and bug fixes including:
  • Added the ability to edit a macro even if it's locked by another user.
  • The errors in the Catch Error dialog are now sorted alphabetically.
  • When the macro error dialog is displayed, the user can now press Ctrl+C to copy the contents of the window to the clipboard.
  • Fixed a bug in the Variable Modify String: Copy part of string command where the source variable was not processed.
  • The Variable Set From File path command now returns the correct filename when the file extension is included twice in the filepath.
  • The Encrypted Text command now supports the Keystroke Speed settings properly.
A complete list of changes is available on the version Release Notes or the Revision History pages.

Wait for Text Playback, Lock Player and Unlock Player commands ME Pro

The Wait for Text Playback command is used after a Text Type command. It causes your macro to wait until your keyboard buffer reports that it has finished typing out text. In many cases, with short amounts of text, this is not needed. However, depending on how much text you are typing and how busy your computer is, it may be helpful.

Macro Express can type text much faster than you can. In fact, Macro Express often types faster than your applications can process keystrokes. In many cases, even if your application has not finished processing all of the keystrokes, it does not matter to your macro. However, in some situations you do not want your macro to continue until all text has been acted on.

It doesn't hurt anything to use a Wait for Text Playback command. If the amount of text typed is short or if your application is fast enough to quickly process all of the keystrokes, this command does not affect the speed of your macro. It only waits until the keyboard buffer is empty. If it is already empty, then this command does nothing.

Wait for Text Playback is available in both Macro Express and Macro Express Pro.

While Macro Express only allows one macro to run at a time, Macro Express Pro can run multiple macros simultaneously. This brings up the possibility of the actions of one macro interfering with the actions of another macro. The Lock Player and Unlock Player commands are used to prevent conflicts. The Lock Player command prevents another macro from starting while the macro containing the Lock Player command runs. It is good practice to include the Unlock Player command in a macro containing the Lock Player command.

In this example Macro Express Pro macro the Lock Player and Unlock Player commands are used to prevent another macro from being activated if the keystrokes in the Text Type command happen to include a combination of keys that would activate another macro.
  Lock Player
Text Type: <a lot of stuff>
Unlock Player

However, if the hotkey is included near the end of a large block of text and if the application receiving the text cannot keep up, the keystrokes may be processed after Macro Express Pro has completed the Unlock Player command allowing the keystroke to unintentionally activate another macro. Adding the Wait for Text Playback command prevents this.

  Lock Player
Text Type: <a lot of stuff>
Wait for Text Playback
Unlock Player

Rounding Decimal Numbers ME - ME Pro

The Variable Modify Decimal: Round command uses a common type of rounding called Asymmetric Arithmetic Rounding, which always rounds a midpoint value to the larger value. What does this mean? Well, we know that a 5 is the midpoint between 1 and 10 and will therefore be rounded up to 10. For example, 1.235, if rounded to two decimal places, would result in a value of 1.24. But what if the value was -1.235 (negative)? If you are thinking -1.24, that would be wrong, because when working with negative values, the value closest to zero is the larger number so in this case it would be rounding down. The correct asymmetric arithmetic answer would be -1.23. Do not be confused. You only need to remember that Macro Express always rounds a midpoint value, positive or negative, to the nearest greater value. *

Macro Express also supports another method of rounding called Bankers Rounding or Round Half to Even. This rounding method rounds to the nearest even number. For example 1.25 is rounded to 1.2, 1.35 is rounded to 1.4, -1.25 is rounded to -1.2 and -1.35 is rounded to -1.4.

You may set Macro Express to use Bankers Rounding by setting the Windows Registry value:
  HKEY_LOCAL_MACHINE\SOFTWARE\Macro Express 4\AdvOptions\Bankers Rounding

to a DWord value of 1. You will need to restart Macro Express or have your macro run the Reload Macro Express Preferences command after changing this value.

You can use macro commands to alter the rounding method. These commands round to the next higher absolute value:

  // Perform absolute rounding
If Variable %Dec% Is Less Than "0"
    Extended Math%Dec%=Abs(%Dec%)
    Variable Modify Decimal: Round %Dec% to 4 decimal places
    Variable Modify Decimal: %Dec% = %Dec% * -1
    Variable Modify Decimal: Round %Dec% to 5 decimal places
End If

* Excerpt from Macro Express Explained, The First Book About Macro Express. Used by permission.

Press Kit | Resellers | Affiliates | Contact Us | Site Map | Trademarks | Privacy
Copyright © 2017 Insight Software Solutions, Inc. All rights reserved.
Insight Software Solutions, Inc. Home Page Insight Software Solutions, Inc. Home Page