StartWatch Copyright © 2008 SoftWx, Inc. All rights reserved. version 1.1.1 (Jan 12 2008) Although we strive to produce a reliable program, SoftWx provides no warranty of any kind. A trial version is available so you can try the software and determine it works for you and meets your needs. This program is copyrighted, and may only be distributed by SoftWx, Inc, or by first obtaining permission from SoftWx, Inc. Support Contact support@softwx.com Product Website http://www.softwx.com/windows/startwatch.html ******************************************* RELEASE NOTES UPGRADING Simply install StartWatch over your previous installation. You do not need to uninstall StartWatch first. If you already have StartWatch installed, existing options are automatically converted to accomodate program changes the first time you run the new version. REGISTRATION StartWatch is distributed as shareware. In its unregistered "freeware" mode, StartWatch may be used without any time restriction, but not all features are available. In this mode, all startup features, port monitoring, and monitoring with crash/hang restart of the first program in the program list are functional. When registered, the monitoring with crash/hang restart features will work for all the programs in the program list. If you need this full functionality to try the software before registering, a 30 day trial key can be obtained upon request via email (contact support@softwx.com). When the trial expires, the program will revert to unregistered "freeware" mode. To use the full set of features, look on the website for information on registering. The cost to register is only $25. When notice of payment has been received, you will be sent a personal serial number and registration key. This will come as an attached text file that you simply place in the StartWatch folder. Once you are a registered user, you are entitled to free updates, both minor and major. You will not be asked to pay to upgrade to new versions. A bundle offering of VirtualVP plus StartWatch will be offered for $49. This is a discount from the full price. VirtualVP users that have already registered VirtualVP will also be able to register StartWatch at a discounted price of $19. I will fix bugs that are reported as quickly as possible. If you encounter a problem, before reporting it, check the website for a new version. If there is one, look at the release notes to see if your problem has already been identified and fixed. FUTURE FEATURES Email configuration Email alerts KNOWN BUGS AND ISSUES None known at this time VERSION HISTORY v. 1.1.1 Jan 12 2008 Fixed bug in port down detection timing. Changed default activity log level. Made minor changes in the way StartWatch behaves when Windows is shutting down. Updated the User Guide. v. 1.1.0 Nov 5 2007 Removed the trial period. Now the program is freeware mode by default, which has all functions except program monitoring only works for the first program in the list. Registering enables monitoring for all programs you've set up. A time limited trial registration key can be requested. Changed where configuration and registration infomation are stored to better accomodate the Vista version of Windows. This means each user will have their own configuration information. If you already have an earlier version, StartWatch will automatically convert your configuration and registration information to the new format. Moved the Options menu choice under the View menu. Added Import Options, and Export options menu items to provide a means for different users to share their configuration. Under the Help menu, there is now an menu choice that checks for updates. Under the Help menu, there is now an option that builds a single file containing all the data SoftWx needs to troubleshoot a problem or bug. The Program Monitor configuration window contains a new option that tells StartWatch that it should reboot the computer if the monitored program hangs and refuses to terminate. The reboot feature displays a pop up window for 10 seconds that lets you cancel the reboot if you happen to be doing something on the computer at that time. (USE WITH CARE) The Port Monitor configuration window contains a similar reboot option that reboots the computer if the monitored port remains down for a specified period of time. (USE WITH CARE) Fixed bug that should improve StartWatch's ability to terminate hung programs. Fixed bug in the option to close StartWatch after all programs have started. Fixed bug where programs that depend on a port, and are configured to be closed if the port goes down, would not be restarted after the port came back up. Fixed bug that in some cases prevented StartWatch from restarting crashed or hung programs. v. 1.0.2 Jan 11 2007 Fixed bug on some computers where notification icon would get created before windows was ready for notification icons. v. 1.0.1 Dec 27 2006 Fixed a bug in the code for manually killing a program. Made some changes to the algorithm that identifies a program's main window. Fixed bugs in code that obtains process list for computers running versions of Windows older than Win2000/WinXP. If a program had a delay defined, and you started it via the menu to start a new copy of an individual program, the program would wait the specified delay before starting. Now the program starts immediately in that circumstance. Reversed the display order of the priority drop down list in the Program Options window so that the highest priority is at the top of the list instead of the bottom. Fixed bug in storing of selected priority on computers running versions of Windows older than Win2000/WinXP. Programs defined to not start a new copy if the program is already running only checked to see if the program was running when the start sequence began. In the case of delayed program starts, this could cause a duplicate to get run if something outside StartWatch started up the program between the the time the start sequence began and the time the program was supposed to be started. Now it will check for the program's existance at the time the program is supposed to be started. Increased the delay before sending the message to WeatherLink that puts it into bulletin mode (WeatherLink occasionally ignored the message). Fixed small memory leak in the registration entry form. Added some additional informational logging to the activity log. Made monitor related logging messages more consistant. Added better behaviour when unable to start a program (like a bad path). Improved the code that terminates a program to better handle programs that are difficult to terminate, and to handle the situation when a program can't be terminated at all. Fixed bug where alerts.txt and log.txt files were sometimes written to the wrong folder. v. 1.0.0 Dec 10 2006 Updated the manual. Fixed bug where disabled port monitors were still monitored. Fixed bug in formatting of alerts written to the alerts file. Fixed a bug in Close All, Kill All and StartWatch exit that would trigger alerts and actions of dependant programs unneccessarily. Made some small improvements to the port monitor process. v. 0.7.1 Beta Nov 22 2006 Sometimes StartWatch didn't detect that a port that had gone down had come back up. Made some changes to fix this. Made further tunings to algorithm that detects which of a program's windows is the best one to receive the close message. Fixed bug that allowed unwanted characters into the alerts, causing the alerts display to be blank. Additional information is written to alerts having to do with program hangs, cpu hogging, and exceeding memory limit. No longer send a minimize message if a program ignores initial request for it to start minimized. This feature sometimes caused programs to get into weird states since they often received the message while still initializing. Added slider control to program options window. The slider is associated with the Hang Protection check box, and allows you to control the sensitivity of the hang protection. Low sensitivity means the program can be unresponsive for a long time before being tagged as "hung". High sensitivity means the program will be tagged as "hung after only a brief period of time in an unresponsive state. Added 2 seconds option to the Check Interval setting. Fixed bug that used the check interval during program startup. Between the time StartWatch starts the program and when the program first responds, StartWatch is supposed to check frequently, and only used the check interval after the program has begun responding. This was most noticable when the check interval was long. v. 0.7.0 Beta Nov 5 2006 (this completes the feature set for v. 1.0.0) Added Programs menu to the main window. Moved "Start Programs" from the File menu to the Programs menu, and renamed it "Begin Startup Sequence". Added two types of menu options to the Programs menu - the first type is group commands that affect all programs, and a second type which only affect the program that's currently selected in the program list of the Status page. Added pop up menu when you right click the mouse on a program on the Status page. The popup menu contains the program specific options also found in the Programs menu. Added dynamic Program Statistics window. One of the items displayed is the peak PageFile usage. This value is useful in determining a reasonable value for the Memory Leak Protection's Max Memory setting. After your program has run for awhile (24 hours for example), you can see what the peak memory usage was during that time. Made some changes to program minimizing and closing. Fixed bug in the shared timer dispatch code. Fixed bug where programs that were closed because the port they depend upon went down did not always restart when the port came back. v. 0.6.4 Beta Nov 2 2006 Fixed bug in detection of program going over memory limit. Improved the identification of the main window, and closing a program. v. 0.6.3 Beta Nov 1 2006 Fixed bug that sometimes displayed negative CPU usage. Fixed bug that wasn't saving alert display order preference. Fixed bug that wasn't saving update speed preference. Fixed bug that wasn't allowing the range of values to be entered in the Program options window's Max Memory edit box. Fixed some bugs in handling of programs with Check Intervals of 0. Further minor tuning of the hang detection algorithm. Improved algorithm that identifies best window of a program to use for sending messages. Improved the program minimization feature. v. 0.6.2 Beta Oct 30 2006 Fixed bug in CPU Usage calculation Fixed bugs in hang detection Made some adjustments to lessen false positives for hang detection. v. 0.6.1 Beta Oct 30 2006 Made some adjustments to lessen false positives for hang detection. v. 0.6.0 Beta Oct 29 2006 Added CPU usage percentage to the program status info. This is like the value displayed in TaskManager, but the displayed values will not match exactly because of differences in the timing intervals. Added CPU Hog detection and protection. There is a new option in the program options that will close and restart a program if it becomes a memory hog. A memory hog is a program that consistantly uses 90% or more of the available CPU time over a 1 minute period. Added option for setting the starting priority of programs started by StartWatch. Added Alerts tab to Options window. Added options for controlling visual handling when new alerts occur. Added options for playing sounds when new alerts occur. Improved the hang detection to use a combination of message responsiveness and CPU usage. Improved the code that identifies which of the program's windows is the "main" window, i.e. the one to whom messages for the program should be sent. Made some positioning and label changes on the program options window. Fixed a bug where text was chopped off for some alert messages. Fixed a bug in the check interval code. v. 0.5.0 Beta Oct 26 2006 Added leak protection - you can set a memory limit for monitored programs, and if the program exceeds that limit, it is closed and restarted. Added memory use to program status info. This is akin to the value displayed in the "VM Size" column of Windows' TaskManager. Added option for skipping starting a program when an existing instance of that program is already running (and then monitor that existing instance) Added alerts for important events. Added logging (to the log.txt file) of program and port state changes. Added registration window. Since this is the first semi-official release, trial periods will reset back to 30 days. More improvements in the way programs are closed. Improved the minimize programs after start code to better handle programs that fiddle with their own window state right after they start. Fixed some bugs in closing and restarting programs. Fixed bug that prevented ReleaseNotes and UserGuide from opening in some circumstances. v. 0.4.0 Beta Oct 18 2006 Added User Guide, and menu for displaying it. Added menu for displaying release notes. Added logging of program errors to a log.txt file. Changed the layout of the option windows. Added the ability to change the display order of programs and ports. Added popup window when closing StartWatch that gives the option of closing all the program started by StartWatch. Improved the way hung programs are detected. Improved the way programs are closed so fewer programs will ignore the close request, and the close message isn't sent to the wrong thread or window of the program. Added status colors to the main window display of programs and ports. Improved StartWatch behavior during windows shutdown and user logout. Fixed bugs in the stop/restart based on target going down/up. v. 0.3.0 Alpha Oct 6 2006 Added minimize option for started programs (needs more work - some programs restore themselves after they get going) Added special option if program being started is WeatherLink to automatically put WeatherLink into Bulletin mode. Could do similar thing for other specific programs in the future. Fixed bug in the Can Terminate setting v. 0.2.0 Alpha Oct 5 2006 Added the features related to stopping and restarting programs when the program or port they depend on goes down v. 0.1.1 Alpha Oct 5 2006 Fixed bug in the code that terminates a hung program v. 0.1.0 Alpha Oct 5 2006 Initial alpha version