Marcus' Macro Blog

Tips and News on Macro Recording and Automating Windows with Macro Scheduler
October 15th, 2014 by Marcus Tettmar

On October 25th MJT Net employee Dorian Ellis is taking part in a 24 hour gaming marathon to raise money for Doernbecher Children’s Hospital, a hospital local to Dorian which has treated children of friends of his.

When Dorian isn’t answering Macro Scheduler support tickets he’s often to be found playing on-line games, so this fundraiser combines his passion with a cause close to his heart.

Please check out his page and, if you can, make a small donation and let’s see if we can help Dorian reach his target of $1000. Thank you.

October 14th, 2014 by Marcus Tettmar

Did you know there was a Macro Scheduler SDK? It allows you to run Macro Scheduler code from right within your own apps. You can run and interact with MacroScript code within VB, C++, C#, Delphi, VBScript … or any other programming language which lets you use a COM object or Win native DLL.

It even works in Python. Here’s a small example which uses the screen image recognition functionality to find and click on the Windows Start button:

Another slightly more complex example which opens Notepad and types into it. It also demonstrates how you can call chunks of code at a time instead of all at once and set and get the value of script variables during execution. It also gets the result of the script set via MACRO_RESULT:

More information about the MacroScript SDK can be found here.

A number of customers have used the SDK to build macro-ing capabilities into their own products and/or create tighter integrations between their own software and automation routines using MacroScript.

If you’re interested in trialling a copy or getting pricing info drop us a line.

September 30th, 2014 by Marcus Tettmar

It’s always interesting to hear what our customers use Macro Scheduler for. So many use cases. Here’s one from Mark Croom:

For the convenience of listeners to the radio stations I work with, the program is doing some file handling tasks that put artist and title information onto our website and into radiotext on RBDS-capable radios, during programming that is supplied by satellite networks rather than through the local automation.

Works great and I can see the amazing flexibility of Macro Scheduler for other automation uses.

Mark Croom

September 22nd, 2014 by Marcus Tettmar

I taught my son Ben, who is 8, to count in binary last night.

It was fun. He struggles with math, but this seemed like a revelation for him. So simple, so powerful.

I realised he didn’t know what is inside a microchip – that a computer is just a box of switches. That when a sprite moves across the screen there are essentially just lots of little lights being switched on and off quickly. That 1s and 0s, ons and offs – two simple states – power our world, helped send men to the moon.

I sensed a Eureka moment for him. Almost wonder if in fact we’re teaching kids the wrong way around. Binary is so fundamental, so important, fun and easy. Teach kids to add and multiply in binary and I’m sure it will better prepare them for doing the same in decimal. If nothing else the fact that this has something to do with computers is probably a little incentive in getting them to pay attention.

I didn’t learn binary until half way through secondary school. I have no idea if/when schools teach it now.

Kids use tablets, smartphones, video games and computers all the time. Do they know what’s inside?

September 4th, 2014 by Marcus Tettmar

We’ve added a new article to our help desk: How to Share Macros with Other Network users

August 8th, 2014 by Marcus Tettmar

Today we had two different support requests asking how to have a Macro Scheduler macro determine which page IE is on.

One person was asking about using Image Recognition for that. You could also use the IE functions to examine the HTML or look for the existence of a specific HTML element.

You could do one of those, sure, but I think that’s over complicating things.

My motto is “keep things simple”.

IE’s Window Title adopts the page title of the web page it is displaying. IE also shows the URL in the address bar. So why not just look at one of those. Like this:

//Two simple methods to see which page IE is at.

//Method One - Just look at the window title
IfWindowOpen>Bing - Internet Explorer
  //Bing is open - do this
  IfWindowOpen>Google - Internet Explorer
     //Google is open - do that

//Method Two - Look at the Actual URL in the URL bar - I used the Wizard to get this code and then altered the window title to make it a substring match
UIGetValue>- Internet Explorer*,{"Address"},curVals,Positions,nHeight
  //must be at google
  //must be somewhere else
    //must be at bing
August 7th, 2014 by Marcus Tettmar

Want to earn a little extra cash? If you are a registered Macro Scheduler user, you can now recommend Macro Scheduler to your friends, colleagues, customers – or anyone else – and we’ll give you 20% of every sale you generate.

You’ll find details in your account at

July 24th, 2014 by Marcus Tettmar

My recent newsletter with the screen-cast of the old Windows 3.1 Macro Recorder prompted the following email from long time customer, Ian. In his email he reminisces about how he originally found and used Macro Scheduler to solve a thorny problem for his employer which had previously stumped Microsoft. It’s a good story so I thought I’d share:

Hi Marcus,

I wanted to take a moment to say thank you for the upgrade to Macro Scheduler you sent me this afternoon. I’ve installed it and had a look at the sample scripts – I think I’m going to have fun with the image stuff J

Since it’s been so long, I think I am now able (if you are not bored silly) to explain how I used Macro Scheduler to save the bank a bucket of money…

I joined [large well known international banking group - name removed] as a ‘technical discovery analyst’ in the XP roll out project. No one ever explained exactly what my job was, but it turned out to be ‘sh!t catcher’ – anything that couldn’t be sorted elsewhere ended up on my desk and I had to find a fix (often in less than a day!).

The bank used a well known credit checking agency to do credit checks. In those days [well known credit checking agency] used Security Certificates in Internet Explorer to track billing data – each cert was a unique valuable entity, and we had two options; export them from the machines prior to switching them out, or reissue 10,000 certs! This is the task that Microsoft came in to do (they left about a month before I joined). The problem was that the certs are designed not to be exportable automatically, so that they cannot be programmatically stolen. And so they arrived on my desk.

Since I knew that I had to get a lot of people to run through a complex export procedure (much clicking and saving in the right place), I thought back to the Macro Recorder in Win 3.1. I knew that it wasn’t in NT or 2000 (which was in use at the time) and a quick Google brought me to your site. I popped downstairs to ask my boss for a hundred pounds for a proof of concept (!) and she gave me her bank credit card :-) .

Once I had the software installed on my workstation I began to hack through the samples and the manual. By the end of the first day I had a pretty good idea of what I had to do, and at close of play on the next day I had successfully exported and reimported certificates. I was able to go back downstairs and say that I had a viable solution. Much Brownie Points for that conversation!

The export script had 19 versions by the end, and the import one had 11 (the users ran the export first, then the import on their new machine). I’ll attach the last version so you can wince at my cludgy code!

I also wrote a script to find out how much file data was on local machines since it was going to be dumped onto FP servers. That one’s an even bigger bowl of spaghetti code J

Anyway, I’m sure that’s enough for now! Thanks again and I’ll continue to spread the word about Macro Scheduler.

Take care, Ian

July 23rd, 2014 by Marcus Tettmar

A fun macro from JRL in the forums: Macro Scheduler Interstellar Travel Simulator? Why Not?

July 17th, 2014 by Marcus Tettmar

Before Macro Scheduler existed I was a junior member of an IT department. As part of my job I built small tools to automate specific tasks. At the time I was using VB. Each time I had to automate a task I had to reinvent the wheel a little.

The whole point of Macro Scheduler was to simplify the task of building automation routines. To avoid having to reinvent the wheel.

There’s no reason why you can’t automate your Excel-to-SAP/WEB/ERP/ACME-Desktop-App by writing code using C# or C++. But it’s going to take you longer than using Macro Scheduler. Macro Scheduler functions like “SendText” and “UISetValue” encapsulate some pretty low level and quite convoluted code. The code wizards and macro recorders which help you use them are even more complicated.

One of the main purposes of Macro Scheduler is therefore to enable people to automate things more quickly and more easily than could be done with traditional programming tools. It makes it possible for non-programmers but also simplifies and speeds up automation for developers.

Over the last 17 years we’ve helped people with a lot of automation tasks. We offer consultancy and have been into people’s offices and also helped over the phone and remote desktop. Most routines take us a few hours to create a macro for. Some take a day or two. Rarely do we need to spend more than three days on one process, though there are some projects which involve a series of automation routines that may therefore take longer or be done over a few sessions.

To do the job from scratch with C#, C++ or VB might take weeks. Many people who approach us seem to be imagining that to automate their task may take days or weeks. They are often very surprised when we tell them it’s a few hours not a few days.

We are all about saving time and money. That’s what our tools do and it’s why we built them. Our tools mean you don’t have to pay developers lots of money to spend weeks or months building custom solutions.

The only down side to this from our point of view is that we routinely disappoint large consultancy businesses and potential partners who are used to selling IT contracts worth hundreds of thousands. They approach us thinking that there’s a huge opportunity and that we’ll pay them a large cut of a big consultancy project.

But rarely does a job require so much time, and that’s the reason we’re here. Sometimes I sense these people want us to “flesh” projects out. They think we’re “too good” at what we do. We should slow down, make things more complicated and thus charge for more time.

But that isn’t us. That’s not why we’re here or why we created Macro Scheduler. The whole ethos of Macro Scheduler and MJT Net Ltd is to save time, to find more efficient, less expensive ways of doing things that were once thought impossible or too expensive to do, and to enable people to automate without specialised knowledge.

That said we’re happy to work with companies on an on-going basis. I have found that most businesses approach us with one specific routine in mind and then when they see what can be done they realise how it can be applied across the organisation in other departments, for other teams. Saving a team one hour a week may not seem like much, but do that for 500 other teams and it adds up to a huge efficiency saving for the entire business.

If you would like to talk to us to find out how we could help your business, whether on an ongoing basis or just for a one-off job, please drop me a line here.

    • Get FREE Consultation


  • Categories