JitBit Software. Net Profile Switch, Macro Recorder, AspNetForum, RSS Feed Creator.
products download purchase support company blog

Showing posts with label macro recorder. Show all posts
Showing posts with label macro recorder. Show all posts

Jul 7, 2008

Macro Recorder: disk defragmenter sample macro

Just to illustrate that creating an automation macro with Jitbit Macro Recorder is as easy as recording a macro, here is a simple (very simple) macro that starts defragmentation on disk C: in Windows XP, with three easy steps:

1) The first line instructs Macro Recorder to launch Windows XP Disk Defragmenter:

OPEN FILE : dfrg.msc :

2) The next line simply waits for the defragmenter window to appear:

WAIT FOR : Disk Defragmenter : appear : 2000

3) Finally this block launches the appropriate item in the defragmenter window menu (which in our case is "Actions - Defragment"):

Keyboard : AltLeft : KeyDown
Keyboard : A : KeyDown
Keyboard : A : KeyUp
Keyboard : D : KeyDown
Keyboard : D : KeyUp
Keyboard : AltLeft : KeyUp


The resulting macro looks like this:

OPEN FILE : dfrg.msc :
WAIT FOR : Disk Defragmenter : appear : 1000
Keyboard : AltLeft : KeyDown
Keyboard : A : KeyDown
Keyboard : A : KeyUp
Keyboard : D : KeyDown
Keyboard : D : KeyUp
Keyboard : AltLeft : KeyUp


Of course you don't have to actually type these commands when you create a script in Macro Recorder, you can use the toolbar instead. First you click "Insert 'Open file' command", then you click "Insert 'Wait for window' command" etc... Jitbit's macro-language remains "hidden", it is used only if you decide to edit a saved macro in some external text editor like Notepad (which is the preferred way for some programmers and tech-geeks).

Simply select the above text, copy it to the clipboard and paste it to the Macro Recorder. Or save as a plain-text file with a ".mcr" extension to open it in the Macro Recorder.

Dec 20, 2007

Macro Recorder: another trigger example

Another example of "triggering" events with our Macro Recorder software and the IF statement. The following script makes Macro Recorder wait until Notepad window has appeared.

LABEL : start
IF WINDOW EXISTS : *notepad*
GOTO : end
ENDIF
DELAY : 2000
GOTO : start
LABEL : end
MESSAGE BOX : Notepad window found, exiting..

As you can see, this macro checks every 2 seconds, and if it finds a window with the "notepad" text in its caption, the macro exits. Simply save the above text as a plain-text file with a ".mcr" extension and load it into the Macro Recorder to test how it works.

Oct 12, 2007

Routine

It's been a while since my last post, but I guess it's OK considering how busy we have been this week.

Our Macro Recorder software has been featured at GiveAwayOfTheDay for 24 hours. People have made some quite reasonable comments, so we had a lot of ideas how to improve our Macro Recorder. We are already working on a new version which will fix the context-menu positioning, add some new macro commands and more.

We have also released fresh versions of Jitbit ASP.NET Forum, which fixes some critical errors under MySQL, and System Purifier which improves its performance.

Oct 2, 2007

Macro Recorder helps Canadian police

We are happy to announce that Saskatoon Police Service is now using our Macro Recorder to help them more effectively fight online sexual exploitation of children. We are really happy to help them catch child molesters. Those sick bastards have to be stopped. Of course, the software is provided free-of-charge.

Today's Link-List:

Sep 15, 2007

Macro Recorder best practices

Every single business-blogging tutorial shouts - don't be too personal on your blog. I was way too personal lately. So, today I'm going to follow that piece of advise and open a series of posts that will describe best practices for using our products.

Our Macro Recorder software can be used to "trigger" events using IF statements. With this feature, for instance, you can make Macro Recorder "watch" the hard disk, and perform some actions, when a particular file appears in a folder. Another example: with the following script Macro Recorder will wait until some particular text appears in the system clipboard, and then exit.

LABEL : start
IF CLIPBOARD EQUALS : test
GOTO : end
ENDIF
DELAY : 5000
GOTO : start
LABEL : end
MESSAGE BOX : The text "test" is found, exiting..

As you can see, this macro checks the clipboard every 5 seconds, and if the text in the clipboard is "test", the macro exits. Simply save the above text as a plain-text file with a ".mcr" extension and load it into the Macro Recorder to test how it works.

Aug 10, 2007

Macro Recorder: new timing architecture

Here is another post in the series of "the making of" posts where I speak a bit about what we're doing on the next versions of our products.

Today we have looked at our Macro Recorder and decided to abandon the idea, that every command/event in a macro must have a "timeout" characteristic.

This was stupid. We admit it. It's a legacy feature, left from the days when Macro Recorder was just a tiny little mouse-recorder/player tool, without all this "if-then-else-goto-repeat" stuff. Actually sometimes I miss those happy days... ;)

Now, this timeout field was supposed to mean "how many milliseconds to wait, before executing the command". It was very confusing for a new user to understand, why does Macro Recorder assign this "timeout" to the recorded commands, instead of simply inserting a DELAY command before it? It also made the text of a saved macro look obscure. That's why we are getting rid of it. No more timeouts. If previously a saved macro would look like this:

0 : Keyboard : D : KeyDown
14: Keyboard : D : KeyUp
From now on a saved macro will look like this:
Keyboard : D : KeyDown
DELAY : 14
Keyboard : D : KeyUp
Looks more human-readable, right?

Also we have found a small error in the exe-compiler, which may lead to incorrect GOTO-command processing. Many thanks to Henrich Eckhardt for reporting!

Aug 2, 2007

Macro Recorder: the making of

Now, with this blog, I finally have a place to whine about our everyday struggle for new versions. So, this post marks the beginning of a series of "the making of" posts which will tell you a bit about what we're doing on the next versions of our software.

So, if anyone is interested what's behind those dry "what's new" lists, here we go.

It occurred to me the other day, that our Macro Recorder has an "IF" statement, but there's no "ELSE" statement. How dumb were we not to add this feature? So I got filled with enthusiasm (Dan, I promise, I will never call this late again) and we started coding right away. After a while I realized that adding "else" would be more complex than I thought, since I will have to rewrite all macro-command stack processing... At the same time I found a general bug with IF-statements which can result in improper behaviour. After all, what I thought would be a 15-minutes job resulted in 3 sleepless nights.

But now it is almost finished. I even decided to add another type of IF-statement - "IF Window Exists" - to this release. I'm pretty sure it will take me no more than 15 minutes...