Marcus' Macro Blog

Tips and News on Macro Recording and Automating Windows with Macro Scheduler
July 25th, 2016 by Marcus Tettmar

Are your macros reading from other files? Find out how to avoid hard coding file paths and use relative folders:

July 20th, 2016 by Marcus Tettmar

What would you like to see added to Macro Scheduler? Comment below.

July 12th, 2016 by Marcus Tettmar

This is a repost from 2006.

One of the best ways to learn to use a software product fully is to try to automate it. Testers and automators have to learn the software’s interface really well, possibly better than the people who wrote it. Ok, the developers know the algorithms better than anyone else, but it is the person automating it who knows the ins and outs, pitfalls and quirks of the interface.

We all know how badly designed some Windows programs are. And in these days of fancy hi-res graphics and snazzy toolbar buttons it’s easy for the designers to forget about shortcut keys and keyboard navigation. The most productive way to use a PC is to forget the mouse and learn the keyboard shortcuts. You can get things done much more quickly. Yet even the most experienced Windows users don’t know half the keyboard shortcuts that exist in Windows (tips for keyboard navigation in Windows could be a post for another day).

Knowing these shortcuts makes automation so much easier and more reliable. Automating an application by sending mouse events and mouse clicks is unreliable and depends on the screen resolution never changing. Although you can use relative mouse coordinates, sooner or later something is going to change and the button you want to click is not in the place it was when the script was created.

The automation/test engineer is the one who figures out the keyboard shortcuts and finds the simplest, most reliable way of navigating an application. People who automate applications regularly have a good understanding of the different ways to move around Windows and Windows applications. Automated Software Testing can help find issues in the interface just from the process of building the automated test, even before the test script has been run. Building an automation routine for an application will help you find those missing or duplicated shortcut keys and other objects that can’t be driven by the keyboard.
Automators spend so much time fiddling with the software’s interface that they will often become more knowledgeable than the “power-users”. Testers also have the great advantage of being allowed to try unusual scenarios that developers never think about or are too busy to try. They are allowed to break things!

So it goes both ways. Find out the windows keyboard shortcuts and the hot-keys for the application you’re scripting and you can create a better script. Build an application with good keyboard support and your application can be automated more easily. If it can be automated easily it will be easy to use!

July 5th, 2016 by Marcus Tettmar

We have today released Macro Scheduler 14.3. This version has had a UI refresh with new, larger toolbar buttons.

It has also had a lot of behind the scenes work done to make it more usable and look better on Windows 8 and Windows 10 when using high DPI scaling, which is now the default setting when using modern high definition monitors.

There are no functional changes in this release as we wanted to concentrate on the UI changes and DPI scaling issues first, and get this out as soon as possible. The next update will include script engine enhancements and work on that is already underway.

Trial Downloads | Registered Updates/Upgrades | New Licenses

June 21st, 2016 by Marcus Tettmar

I thought it was about time for an update.

We are currently working on improving Macro Scheduler’s UI appearance under 4k UHD monitors. These screens are becoming more common, especially since the launch of Windows 10 which includes improved scaling features.

Macro Scheduler needs to be DPI aware in order to perform image recognition on modern high definition screens. The problem is that when you make an app DPI aware, Windows then doesn’t automatically scale it for you. The upshot of this is that the 16×16 toolbar icons amongst other things are then almost too small to see. Some older visual components also don’t cope well.

So we are working hard creating new 32×32 icons and making tweaks to some of the forms and components to ensure Macro Scheduler looks good and is usable on this new breed of high-res monitors.

We also continue to work on script engine improvements and feature suggestions. However, right now we are prioritising the UI improvements and since more and more people are using new 4k screens we plan to release an update with only these UI changes before releasing other changes. This will allow us to get this out more quickly.

Watch this space.

May 12th, 2016 by Marcus Tettmar

Every now and then someone asks something like “How do I change the font in a modal dialog box?” or “Can I make an Input box multi-line?”.

Well, no, you can’t do those things to the standard Message/MessageModal or Input box functions. But, don’t forget that with Macro Scheduler you have the ability to create your own dialogs and make them act and feel pretty much any way you like. So the answer to the above questions, is “Create your own versions”.

As an example, let’s say you want a modal dialog that looks and acts much like the standard modal message box created by MessageModal. Only you want the text to be green in an italicized aerial font. Here you go:

//this would go at the top - customize as you wish
object CustomMsgBox: TForm
  Left = 493
  Top = 208
  HelpContext = 5000
  BorderIcons = [biSystemMenu]
  BorderStyle = bsSingle
  Caption = 'My Message'
  ClientHeight = 170
  ClientWidth = 319
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  OldCreateOrder = True
  ShowHint = True
  OnTaskBar = False
  PixelsPerInch = 96
  TextHeight = 13
  object MSMemo1: tMSMemo
    Left = 0
    Top = 0
    Width = 321
    Height = 137
    Font.Charset = ANSI_CHARSET
    Font.Color = clGreen
    Font.Height = -11
    Font.Name = 'Arial'
    Font.Style = [fsBold, fsItalic]
    ParentFont = False
    TabOrder = 0
  object MSButton1: tMSButton
    Left = 121
    Top = 143
    Width = 75
    Height = 25
    Caption = 'OK'
    DoubleBuffered = True
    ModalResult = 2
    ParentDoubleBuffered = False
    TabOrder = 1
    DoBrowse = False
    BrowseStyle = fbOpen


//do this to call your message
Let>MyMsg=Hello world, this is a lovely custom message box

And don’t forget that once created you can call the dialog any time you like. And if you want to use it in lots of scripts then put the dialog block and subroutine into an include file and use Include> at the top of each script you want to use it in.

Now, it’s over to you. Use your imagination and style the dialog any way you like. We have some Custom Dialog tutorials here: Part1, Part2

April 19th, 2016 by Marcus Tettmar

Macro Scheduler Maintenance release 14.2.08 is now available for download.

Links: Version History | Registered Downloads | Trial Downloads | New Licenses

April 19th, 2016 by Marcus Tettmar

I’ve only just discovered that our newsletter subscriptions system has been broken since last January! New customers and anyone signing up to our newsletter since 15th January 2015 were not correctly subscribed to our newsletter. Luckily we have the email addresses in our database, they just weren’t allocated to the correct list. I’ve now fixed this and moved affected email addresses to the correct list. So those affected will now start receiving our newsletters. Hopefully you won’t be too surprised when you start receiving newsletters from us.

February 11th, 2016 by Marcus Tettmar

Macro Scheduler Maintenance release 14.2.07 is now available for download.

Links: Version History | Registered Downloads | Trial Downloads | New Licenses

January 13th, 2016 by Marcus Tettmar

A slightly belated Happy New Year to all our customers and supporters. I’m a little late getting this up as we are in the midst of an office move! So things are a little hectic.

But wanted to say thank you to you all for being with us and we look forward to working with you in 2016 and beyond!

      • Archives

    • Categories