CRP: automatically re-launch apps and control a program’s allowed number of running instances
CRP (Control Running Programs) is a small free program that runs in the background and performs two functions: it re-launches a program automatically once it detects that it is no longer running, and it limits the instances that a program can be running simultaneously according to a user defined number of instances (including preventing a program from running at all).
Have you ever, say, somehow shut down your instant messaging client without really meaning to only to become aware of this hours later when friends or colleagues call or email you to ask why you’re offline? Or say you have a notes managing app that you like to be always running but shuts down when you only mean to minimize it.
Another, different kind of example is a program that when you try to access it using a launcher or shortcut when in fact it is already running, will mistakenly create another instance of that program running in memory when what you had intended was to simply maximize it or bring it into focus.
CRP program brings together two extremely useful functions that help you manage your system in the above mentioned scenarios. Please note, however that CRP does not automatically limit the instances of running programs on your machine across the board; rather, all operations will apply to programs of your choosing that you have to tell CRP to monitor. Here are more notes on this one:
- What it does: (a) it re-launches programs that you specify whenever it finds that they have been closed or have shut down, and (b) limits the running instances of programs that you specify to a user-specified number.
How it works: CRP consists of two lists, one for “Instance Controlling” and another for “Instance Launching”. Once you add the appropriate programs to either list you can activate each one of these lists separately (i.e. you can have both lists activated or one list activated and not the other). The program will then run in the background and monitor for the system for instances of the programs on your list.
- Re-launching programs: once it detects a program on the “instance launching” list is no longer running it will simply re-launch it.
- Shutting down program instances: CRP will not apply globall to limit program instances; the user has to specify the program(s) and the number of allowed instances first. Once this happens, and when attempting to launch a program in excess of your allowed number of instances, you will see that program flash on screen for a split second before being shut down. Note: you can specify an allowed instances of zero if you want, which will prevent any instances from running.
- Performance: performs extremely well, and manages to monitor your system without running up your CPU cycles or straining your system.
- Memory consumption: 11 megs, which is not that much but seems like it could have been less. My guess is that if you find that this program is useful to you you will not care about its memory use.
Wish list:
- In the case of an allowed number of instances of one, it would be nice if the program provided the option in the settings of maximizing/re-focusing on the already running instance after shutting down any additional instance.
- Deactivating a specific list from the system tray. Currently, you are able to stop the engine from the system tray for whatever list was last accessed, but you cannot specify a particular list.
The verdict: a nice and useful program that is very well put together. I have seen earlier versions of this and must say that this current version performs beautifully. I also like that it brings these two related functions together in one place rather than having to run a separate program for each. Recommended.
Version Tested: 1.0 – RC1, build 422
Compatibility: Windows XP, Vista. Requires .NET 2.0 Framework
Go to the program page to download the latest version (approx 286K).



Samer…
You have been a real cracker for us…. your site provides solutions for almost all the basic and advanced needs of computing…. but please let us know if there are any articles or ebooks (which are, of course, free) that help us do our own PC Assembling (with knowledge about all the hardware components).
Hm…
1. I have utorrent running.
2. I click torrent link in browser.
3. There is new copy of utorrent spawned that sends torrent to running one and exits.
Actually there are a lot of aps that work this way. Does limiting to one instance with CPR breaks this?
@Rarst,
No, you have to MANUALLY add each program you want this program to apply to to the list.
I will make this clearer in the review text.
I mean that I may want to limit utorrent to one instance (manually) but is it going to break such open-instance launches.
Anyway I checked it out and it doesn’t break that… It actually tries but too slow to react so by the time CPR tries to kill open-instance it is already closed.
awesome program!! it helps wmplayer.exe prevent from starting – thing I was looking for a long time….
another helpful program I’m looking for is a GOOD startup manager – better than Startup Delayer and WinPatrol; they both can’t start programs when cpu usage is low after booting (below some %)
Hyper Start is close to this but it’s too primitive…
any suggestion freewaregenius??
I’d like something that will kill a running process if I choose to initiate a new iterration, similar to CPR’s function but the opposite. KompoZer and some other apps don’t close properly for me.
@cartmanffc, Startup Delayer does what you want but you must set delayed starting of some entries. Think about it, what happens when you try to read more and more simultaneous files from a single hard drive. The problem is not the program launcher. The problem is you’re trying to initiate more activity than your system can support efficiently. TANSTAAFL
Samer .. great review, thanks!
Will it stop multiple instances of Firefox loading? If it will, its a real winner, ‘cos this problem drives me nuts!
Cheers JellyW
[...] Windows only: Free application CRP (Control Running Programs) performs two related but separate functions: First, it keeps important applications running no matter what, so if a program unexpectedly shuts down, CRP fires it back up. Second, it sets a user-defined limit on the number of running instances of an application. If you’ve ever unknowingly shut down your IM application, for example, but you need to always be available for your job, the automatic relaunching of specified apps can come in really handy. The second bit of functionality—limiting instances of an application—can be useful when you launch an application intending to restore the currently running instance but you get another instance instead. CRP is freeware, Windows only, requires .NET 2.0. CRP [via FreewareGenius] [...]
[...] Windows only: Free application CRP (Control Running Programs) performs two related but separate functions: First, it keeps important applications running no matter what, so if a program unexpectedly shuts down, CRP fires it back up. Second, it sets a user-defined limit on the number of running instances of an application. If you’ve ever unknowingly shut down your IM application, for example, but you need to always be available for your job, the automatic relaunching of specified apps can come in really handy. The second bit of functionality—limiting instances of an application—can be useful when you launch an application intending to restore the currently running instance but you get another instance instead. CRP is freeware, Windows only, requires .NET 2.0. CRP [via FreewareGenius] [...]
[...] Freewaregenius Download [...]