Process Monitor / Window Logger – AutoIT scripts


In late summer of 2015, I was looking at some programming videos and ran across one showing how simple it is to run a script in the background that grabs keystrokes. This type of application is called a key logger and are usually used for “up to no good” activities. I was interested in whether I could apply this to logging how much time users spend in each application and log that information when they switch from one program to another.

My daughters are older now, but, this type of program could be used to monitor where young people (or old :-)) go on the internet, for example. Still, I thought I would pursue writing a script that I call Windows Logger. The basic theory is that the script grabs the current program name and window (document) title. It starts a timer and when it detects a different active window, it saves a log entry with the last program used and the time spent there. Some hotkeys control various features of the script as it runs unseen in the background. The program can be set to run on startup. If users request it, I can make the function key assignments changeable.

A couple of screen shots are below. The PDF documentation and executable are in here. windows-logger





At work, we sometimes have users whose computers are very slow or have applications that frequently are hung or “Not Responding.” I felt it could be good to have a program log those events for the purpose of knowing which application(s) are misbehaving. Process Monitor is very similar to Windows Logger but it only logs entries for processes that are frozen, hung or “Not Responding” for say 20, 30 seconds or more. Many, many programs go unresponsive when computers start up or when programs are loading the first time for the day. By looking only at process that remain hung for a while, one knows that they are not working properly. Some hotkeys control various features of the script as it runs unseen in the background. The program can be set to run on startup. If users request it, I can make the function key assignments changeable.

A couple of screen shots are below. The PDF documentation and executable are in here. process-monitor






Simple Work Timer

While reading an online article I found a program that would total up the time spent in up to 3 applications. I thought it was worth exploring so I added the ability to track as many programs as is needed. I also added two timers, one for Slack time, one for time spent in any program in the saved list. Users can see the total time spent in each program, make the window semi transparent, etc. When you are in a program that is not being tracked, the window will be orange. Once the program has been added to the menu and you are using it, the window will be blue.

A download is found here. worktimer And screenshots are below.

The initial window

Choose App 1 (Not set)

The program is now waiting for you to click inside one of the applications you want to track time.

In this example, I clicked on a program called Greenshot and it is now tracking time for it.

Do this for each program you want to track time on. If you have more than 12 programs then click on Program Items and bump up that number.



After some time, I click on the menu and choose Timer Summary to see work-timer6

16 seconds in Greenshot, 1 second in Windows explorer, almost 5 and a half minutes of Slack or uncategorized time.

You can set how many seconds of inactivity before Idle time is counted, the number of items in to track (always make it more than you have already entered), and an optional transparency value.


When you are done with today’s summary then select Restart Timers to zero every one and begin tracking again.


Diary Assistant v1.16 for Stickies 9.x

[Diary Assistant v1.16 is available here.  stickiesdiary]

While researching software for saving daily notes and other information, I have run across several free applications that are noteworthy.

For a couple of years, I have used RedNotebook to save daily notes at work. It works pretty well but occasionally doesn’t “close right” and tells me that the next time I run it. It allowed me to quickly search for any text in any daily note. Very handy.

Recently, I moved to a similar program called CherryTree with which you can store notes in a tree with any level of subordinate tree note that you desire. And it had the awesome press F8 key which either creates a note for today or takes you to an existing one. This feature made it very handy as a daily journal and it is more flexible than RedNotebook. A couple of screen shots are below.

CherryTree did most of what I want in a note taking application. At least until I found a couple of long available Sticky Note applications. PNotes and Stickies 9.0c are venerable sticky notes freeware programs. I had seen them a couple of years ago but didn’t pay close enough attention to a breathtaking feature — attaching notes to documents, web pages and/or other active programs.

I always felt that having half a dozen, a dozen, or more notes on my monitors would just be too much clutter and too distracting to use comfortably. But, when you can create a note and attach or pin it to a specific document, then the usefulness is greatly multiplied. The original PNotes is smaller and lacks a crucial feature when pinning a note to a document. It can only pin a note to a specific document or web page. That works well, but, I wanted to pin notes to programs also. Their newer program, PNotes.NET has the ability to use wildcards when pinning notes and is much more flexible. Their dark theme leaves a lot to be desired though. Below is a screenshot from PNotes.NET showing a sticky note for December 5th.

PNotes creates a Diary group and creates a daily note when you press Ctrl+Alt+D. You can hide the note and return back to it any time. If the day has changed then just look under Diary for daily entries. PNotes does a real fine jobs of managing sticky notes but it also requires Microsoft .NET 4 Framework, hence the name PNotes.NET.  While .NET has been around for a long time, it is quite a bloated piece of programming, in my opinion. And there are usually many security updates for it every year.

In order to hopefully stay away from needing .NET, I took another look at Stickies 9.0c from Zhorn Software. It is a very small application at less than 2mb download. It has pretty much the same features as PNotes with some functions named differently. With Stickies 9.0 you can create the following: 1) Desktop Notes which are always visible until you are done with them, 2) Stored Notes which are saved until you delete them, 3) Attached Notes which are only visible when a specific document, web page or application is visible (yeah!), 4) Sleeping Notes which reappear after a designated time and 5) Recurring Notes which popup at intervals and days you choose. Below are some screenshots.

Attaching a note to a window, in this case, a web page, makes that note appear when the web page is browsed to as shown below.

As soon as I click on another web page or program, the Freeware Files sticky will disappear. This makes having lots of sticky notes easy to manage and make much sense in a computer setting. Otherwise, they are not much more than physical sticky notes. I realized that one feature was missing in Stickies 9.0c that was in RedNotebook, CherryTree and PNotes. The Diary or journal feature was nowhere to be found. Having been writing some script and freeware applications the last year and a half, I decided to see if I could program this feature or bolt onto Stickies 9.0.

What I came up with is a script that allows users to add and update Diary notes via either short text commands or a right-click menu. Users can also search Diary notes for the month and the year. I called the add-on “Stickies Diary Assistant” and here are some screen shots.

By using and manipulating the Manage stickies window, I was able to create and search on diary notes. If you choose Add Diary Stickie or type @dt in an editing window, you will be asked to create a note for today. Or you’ll be taken to that note in the Manage stickies window.


The program starts with a rather plain design or skin like a paper sticky, but, allows for sophisticated stickies with toolbars just like mini word processors.


sticky-skin2   sticky-skin3

In order to add another entry choose Add Diary Entry. This will add a separator to today’s note.

The other features of Diary Assistant are for searching notes.

 Month search

Year search

Any text search

When you are done with today’s note you need to Store it. I created a Diary group to put mine in, but, you can categorize it any way you want.


At any time you can press Ctrl-Alt-M to display Manage stickies then search on your notes. Or choose Search All Stickies from the Assistant’s tray menu, enter your text then click OK.

For now, I will be using CherryTree and Stickies 9.0c to manage a lot of different information at work and at home. Yes, I know I could use MS OneNote, but, I have a predilection for small, portable software programs.

One or more of these program could benefit you in your work or home office, you should give them a try.