Using Screencapture IcyScreen in batch file

June 8, 2015   /   by Marco  / Categories :  Technology

Several posts ago I mentioned about a tool that I use called IcyScreen to capture screenshots of a monitoring system that I use for work. You can read this here: Automatic Screenshots using IcyScreen. I setup IcyScreen to capture the screen at an interval of 30 minutes, however, I found that this was not the best setup because the capture would often miss an important event. After several discussions with the team at IcyScreen (great support by the way), we came to a solution. Initially, I had the idea to write a visual basic script to run a batch file to start the monitoring software and then send the Print Screen command. Unfortunately, this was not possible with Visual Basic so the alternative was to setup the IcyScreen software with the Keyword Detection feature. So if a keyword is typed e.g “livemonitor”, it would take a screenshot. So combining this feature and creating a Visual Basic script solved the problem. See below for the VBS code.

IcyScreen Keyword Monitor

The Visual Basic Code

Dim WinScriptHost
Set WinScriptHost = CreateObject("WScript.Shell")
WinScriptHost.Run Chr(34) & "D:\batchfile.bat" & Chr(34), 0
Set WinScriptHost = Nothing
WScript.Sleep 120000
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.SendKeys "livemonitor"

Download Example

Script Explanation

Part 1 – run batch file silently

Dim WinScriptHost
Set WinScriptHost = CreateObject("WScript.Shell")
WinScriptHost.Run Chr(34) & "D:\batchfile.bat" & Chr(34), 0
Set WinScriptHost = Nothing

The first 4 lines is used to run a batch file called batchfile.bat located on the D: of my computer. When this part of the visual basic script is executed, the command prompt run but it is not actually displayed at all i.e it run silently in the background.

Part 2 – Pause

WScript.Sleep 120000

The script then waits for 120 seconds (2 minutes) before it runs the next section. Note that this is in milliseconds. I decided to put this in because it would take about 30 seconds for the tool to load completely and wanted to make sure it runs before it takes a screenshot.

Part 3 – Send keyword keys

Set WshShell = WScript.CreateObject("WScript.Shell") 
WshShell.SendKeys "livemonitor"

This part of the script sends the live monitoring keyword “livemonitor” (it’s like typing the keyword on the keyboard) so that the IcyScreen software can detect it and then take the screen capture.

RESOURCES
Here’s a list of resources that you might find useful:

IcyScreen Software – Awesome software to take screen captures

Example Visual Basic Script 

Article on how to setup schedule tasks

DO YOU LIKE WHAT YOU'VE READ?
Join our subscription list and receive our content right in your mailbox. If you like to receive some Great deals our Freebies then subscribe now!

Our Sponsors

  • Follow us:

OTHER ARTICLES YOU MAY LIKE


BUGS IN TIKTOK WEB APP

BUGS IN TIKTOK WEB APP

In this article, I will discuss the bugs I have encountered while using the Tik Tok web app. When using the TikTok web app, I encountered a frustrating issue where I was unable to follow back users. This problem has persisted, leaving me with zero following despite my efforts to engage with the platform. As […]

read more
THE BEST WOOCOMMERCE AFFILIATE AFFILIATE RETAILER PLUGIN FOR MAXIMUM PROFITS

THE BEST WOOCOMMERCE AFFILIATE AFFILIATE RETAILER PLUGIN FOR MAXIMUM PROFITS

In today’s highly competitive e-commerce landscape, leveraging the power of affiliate marketing has become a crucial strategy for online retailers to maximize their profits. And when it comes to running an efficient and lucrative affiliate program on your WooCommerce store, choosing the right plugin is paramount. The best WooCommerce affiliate retailer plugin that stands out […]

read more

Like our Page