Our good friend Antonius Momac just emailed me to tell me about this video he has put together on automating test plans with SQL verification:
Macro Scheduler users will probably recognise that Antonius is using Macro Scheduler to drive these tests [ keep an eye out for the Macro Scheduler icons and custom dialogs ]
Dorian has just uploaded a video demonstrating his Screen Capture and Email script. Nice video, check it out:
Someone asked today how it might be possible to paste what is in the clipboard into an object using Macro Scheduler without having to use keystrokes.
Here’s an example:
//Sending WM_PASTE to an object causes a clipboard paste, like sending CTRL-V //constants - here we define the WM_PASTE constant Let>WM_PASTE=770 //we need the handle of the object we want to send WM_PASTE to - // - as an example let's find the handle of Notepad's edit window // - for this example make sure Notepad is running with empty document // - so that the window title us "Untitled - Notepad". Modify if needed GetWindowHandle>Untitled - Notepad,hWndParent FindObject>hWndParent,Edit,,1,hWnd,X1,Y1,X2,Y2,result //now send WM_PASTE to it using SendMessage API LibFunc>User32,SendMessageA,result,hWnd,WM_PASTE,0,0
The only benefit I can see with this is that it doesn’t require keyboard focus. In theory neither should ObjectSendKeys and a CTRL-V require keyboard focus. The latter is simpler so I’d tend towards using that. And there may be some applications that work at a higher level and actually expect to see CTRL-V or similar.
Never-the-less it’s a nice example of sending a Windows message and it may be useful for some. So here it is.
In this post from 2008 I demonstrated how to get data from Excel worksheets using Macro Scheduler’s database functions.
This works fine if Office is already installed on the PC. But what if you want to get data from an Excel sheet and the PC you are running on doesn’t have Office installed?
Well you need the Office Data Connectivity Components which you can download from microsoft.com here:
Your entry may be something submitted in the usual course of events – i.e. as an example or in response to a user’s question, or just because you want to win a nice mug!
We’ll accept either some script code or a video demonstrating an automation routine running on your systems.
Any script code you submit needs to be something that will run anywhere and not dependent on applications that only you have access to! If that isn’t possible, post a video instead.
Your script could be an example of some neat bit of code, something useful for others or just a bit of fun. Ideally it will demonstrate something that others can learn from.
As mentioned, we’ll also accept a video or screencast if you have a cool script you want to share which only runs on your systems. So, for example, if you have a routine running at work which automates a desktop or web app that can’t be shared, then take a screencast of the macro in action, submit it to youtube or vimeo or similar and post a link on the forum.
So, get your thinking caps on, and send in some cool code or a macro movie.
* Ideally, each month, we will choose a script/video posted the previous month, but we reserve the right to pick a post submitted at any other time (especially if there have been no recent entries). We get to pick our favourite – whatever that may be
Our good friend Antonius Momac has put together this great video tutorial series.
In this series Antonius walks us through how to use Image Recognition to find and click on a bunch of check boxes. As well as how to use Image Recognition, these videos show you how to loop through an array and how to create subroutines to make your code more efficient and reusable.
Here’s a quick video showing how easy it is to use Macro Scheduler‘s image recognition to control a Linux Desktop (Ubuntu in this case):
After many months of development we are pleased to announce that Macro Scheduler 14 is now available.
There are lots of new improvements in this version and the full change list can be found here.
But here’s a summary of the main new features:
This uses a clever pattern matching technology which means that rather than compare pixels exactly it can determine the similarity of images and, within a specified tolerance, determine the best match on the screen. What this means is that it will cope with subtle changes, e.g. between operating systems and program versions and between alterations to display settings.
Antonius made a great video of the image recognition features. Watch it here.
We’ve even tested finding a Save toolbar button on a modern UI where the capture was taken from an older style button on XP and was a different colour. The image matching technology was able to match the shape of the floppy disk on the button.
Alongside the image recognition engine we’ve overhauled the wizard so that you no longer have to give names to captures. The wizard creates a special folder named after the macro name where it keeps the images. Comments in the editor for each piece of code produced by the wizard show a thumbnail of the needle image so that you know exactly what each piece of code is looking for. There’s also an image explorer so that you can find sections of code based on needle images. And finally, when you compile your script the image folder is copied over to the .exe location making it easier to know what to distribute.
WebRecorder is now part of the core product. All the IE_ functions that were previously provided by the IEAuto import library are now regular native commands. This makes them easier to use (no need to set buffer lengths etc) and of course it also means that the documentation is all in the same place, and the new functions are included in the command locator with code builders.
WebRecorder is now included with Macro Scheduler Standard and Pro.
We’ve added to the existing scheduling options the ability to specify any number of specific dates and times.
You can also set a macro to run on the 1st Monday of the month, or 3rd Wednesday of the month and so on. I call this the “nth nday of the month” option.
Previously to schedule on this basis you would have had to add some script code to determine if the date matches and set the script to schedule every day (or every Monday for example). Now you have finer control and it means less code.
Create zip files, add to zip files and extract from zip files. Simple.
Create MD5/SHA1/SHA256 hashes and encrypt decrypt with AES.
I’m already very proud of our help system and now it’s even better. We’ve done a lot of work to the manual and created a completely new online help system with comments.
The new online manual contains the exact same content as the help file that ships with the software [don't worry - that is still there] but allows for extra dynamic content such as comments, questions and answers, tips and more examples.
Each page in the regular help file includes a link to the online version so that you can find more information or ask questions, or even provide your own tips.
Check out the new online manual here: http://www.mjtnet.com/manual/
See the complete change list here.
Log into your account to view downloads/upgrades.
Those of you with current maintenance will already see v14 download links in your download account.
Anyone who purchased Macro Scheduler since 1st December 2012 have also been automatically upgraded to v14.
If you do not have maintenance and wish to upgrade you will find upgrade prices and links in your account.
Our new license pricing has been increased. But for now we are keeping upgrade pricing at their old levels until February 28th. After that they will go up in line with the new license increases. So if you need to upgrade, do it before the end of February.
We are moving to a 12 month maintenance package which includes all updates. The first year is included with new licenses and upgrades. When the maintenance period expires you can choose to renew for a further year.
Note: Existing maintenance plans will be honoured and will still run until the end of their period – if you already have maintenance then nothing has changed.
To purchase new licenses or for current pricing please go here.