Behind the Scenes: TuneUp Program Deactivator
TuneUp charts new optimization territory each year with its releases of TuneUp Utilities. This year’s version lays a cornerstone in our development cycle, and introduces an entirely new approach to speeding up your PC and making it more reliable. It’s called: TuneUp Program Deactivator.
In this week’s blog post, I’m going to share how I came up with this new feature and how the original idea was transformed into reality. You are going to have access to never-before-seen prototypes, initial screenshots, and our development cycle. Enjoy!
What is TuneUp Program Deactivator?
Windows users know this age-old theory; the more software you install on your PC, the slower it gets. Now, instead of uninstalling programs (you might need them later, right?), we figured out a way to disable programs rather than get rid of them entirely.
So what does that mean? TuneUp Program Deactivator turns off all of the parts of a program that slow down your machine the most: start-up processes, services, and automatic background tasks. The program is still there, but it’s just “sleeping”. There is no memory consumption, processor usage, annoying balloon tips, splash screens during startup, or hard disk activity involved. The cool thing is that the moment you start the program (just double-click on its launch shortcut), TuneUp Program Deactivator enables it again on the fly!
From idea to reality
Do you remember our 200 programs experiment from earlier this year? (Read more in Part 1, Part 2 and Part 3) This marked the birth of TuneUp Program Deactivator.
Back in January, we tested how much a typical PC suffers under the load of having 200 programs installed on it. The result: IT horror! Boot time took more than seven minutes, and the performance of the 2009 notebook was comparable to a vintage machine from 1999—it produced error messages and froze on a regular basis. The test bed was a prime example of a PC that a user never cared to maintain or didn’t know how to optimize.
This sparked an idea! What I wanted to know was how much of an effect TuneUp Utilities 2010 would have on this horribly bogged down machine. I used our suite to optimize the PC as thoroughly as I could; I disabled unnecessary services, turned off start-up entries, and defragmented the disk. I also tried optimizing the system with the current versions of all major competitive products. And while performance improved a bit after I used our own as well as other tuning suites, it did not reach the level of a clean and fresh Windows PC.
For me, this situation was just not acceptable— all of the tuning suites on the market (including our own) couldn’t really solve PC performance problems caused by third-party programs. This haunted me for weeks—I simply had to find a solution to this problem.
And no, simply uninstalling these programs wasn’t a solution—at least if users wanted to use these programs again in the future. Many users don’t like to uninstall software because they don’t know how to reinstall it should they need it again. In some cases, they don’t know where they downloaded the software from, they don’t have the CD anymore, or they don’t know where the product key is, among many other reasons.
The incredible loss in performance is because many programs claw or “hook” themselves in way too many areas of Windows to keep track of. They don’t just run at startup (which is rather easy to disable); they also install services or create so-called “scheduled tasks” that get started regularly while the PC is running, and in many cases they even use several of these methods at the same time. Combine all this and multiply it by the amount of installed programs, and you’re pretty much facing a ruined PC.
I needed a way to get rid of all those “hooks” of a program (at once) and restore the performance of even the most bogged down Windows PC—all the way back to its original state. My first step was to determine if this huge undertaking was even possible—could performance get back to normal, even with hundreds of programs installed? I proved this theory in February by manually disabling each and every hook entry using Sysinternals Autorun and shutting down all third-party processes.
It was mind-bogglingly complex because even I as an expert sometimes couldn’t figure out which programs these entries belonged to, but it worked. Without all of these entries, all of the test PCs eventually performed as well as they did on the very first day they were used.
Obviously, 99% of all Windows users out there don’t a) have the time or b) the knowledge to find every single entry of a program and safely turn them off. We needed a solution—a tool to automatically do this. This is how the idea of TuneUp Program Deactivator was born!
One problem, two solutions
To create a solution to this performance problem, I locked myself in a room with two of my most skilled developers to theorize about possible solutions and test them. Our goal was to figure out a way to deal with all of the hooks programs could use and thus speed up Windows again. We eventually ended up with two solutions:
- The creation of a virtual environment, or a “sandbox”, that’s separate from Windows. We needed to figure out a way to put all of these programs inside that environment. While a good idea in theory, we realized that this is too complicated and that there are many issues users would face, one of them being bad performance through the virtualization overhead.
- The disabling of all of the hooks. We needed to figure out a way to detect all relevant resource-draining hooks a program had created and turn them off safely.
Despite the fact that finding all of these hooks is a complex task, we went with the second route. We wanted to give users the least complicated way to see which programs slow down their PCs, and give them full control by allowing them to turn programs on or off with just one click.

This is TuneUp Program Deactivator in its earliest form. We used this command line prototype to experiment with the deactivation of programs
During the initial research phase, we faced many problems. Disabling some hooks within the operating system caused error messages and led to stability problems. There was a need to care about dependencies between services, scheduled tasks, and start-up entries; disabling program A should not lead to problems with an enabled and active program B! In March 2010, we created early prototypes, which were basic command line tools that disabled all of the hooks of a program and re-enabled them.
Using these prototypes, we experimented with hundreds of programs and developed several methods to determine how programs integrate into Windows systems, such as reading out Windows Installer tables, uninstall keys, version information blocks of all executable files, and other relevant entry points in the Windows registry.

This is a German mockup of one of our first user interface concepts for TuneUp Program Deactivator, which was named “Sandman”

This was finally implemented into an early German beta version a couple of weeks later

This screenshot shows how TuneUp Program Deactivator finally ended up in our optimization software suite
Main goal achieved
May 1 marked the day of our proof-of-concept. We had successfully proven that it was possible to disable essentially all of the hooks of a program with our own software, and we were in the stages of defining programs, especially security software and drivers, that we “whitelisted” and thus protected from accidental deactivation. We then moved the early prototypes into the next stage of development, such as tweaking the graphical user interface and fixing bugs. Next on the agenda: a name! During the entire development phase, we had several potential ones for this feature; these included: “Sandman”, “Program Reliever”, “Program Standby Switch”, “Programs-on-Demand Switch”, “Performance Drain Switch”, “Slowdown Eliminator”, “Program Unhooker”, and “Program Silencer”.

This is an early concept design of the performance graph in German. We thought about different ways of showing how TuneUp Program Deactivator affects users' PCs
But in the end, the name TuneUp Program Deactivator was chosen. Then we set two new goals to make the feature even more unique. First of all, we wanted a performance meter that shows the load of each installed program both before and after users disable it. We came up with several ideas to show our users how each disabled program affected boot-up performance, day-to-day performance and shutdown performance.
Our second goal: We didn’t want to force users to constantly go in and out of Program Deactivator to turn on programs they needed. We knew that would be just too much of a hassle. We needed a way to automatically re-enable programs “on the fly”. That’s why we designed TuneUp Program Deactivator to detect when the user tries to launch a disabled program again, so it can automatically reactivate all of the necessary components (the processes, background tasks and services). Typically when a feature of a program is missing, the program will try to launch its self-repair mechanism or produce an error message. To protect our users from these types of problems without slowing down the PC through constant polling or monitoring, we used a little-known redirection mechanism provided by Windows itself. This means when users double-click on a disabled program (say “itunes.exe”), Windows launches a small part of TuneUp Program Deactivator instead, which first re-enables all of the program’s components automatically and then starts the original program itself. The program will never know it was disabled in the first place!
The finish line
Once we achieved all of our goals, we went into the beta and release candidate phases in late summer and early autumn of 2010. Our thousands of internal and external testers helped us fine-tune TuneUp Program Deactivator and fix remaining bugs. In total, we had eight beta versions and one final release candidate before we launched TuneUp Utilities 2011, with our new key feature TuneUp Program Deactivator.
All in all, we’ve made speeding up and stabilizing much easier for all of our users. Rather than asking users to uninstall (and then probably reinstall) their programs regularly to keep their PCs at peak performance, they can now just turn them on and off with a single click. I’m proud that, over the past couple of months, we’ve developed a hassle-free solution that achieves all the positive effects of many startup, service, and scheduled task managers combined—while still being much easier to use. Actually it’s a lot of fun to just flip those little on/off switches and see your PC’s performance go up instantly, especially on PCs with a large number of installed programs!
Readers, now it’s your turn: Please leave a comment, and tell us what you think about TuneUp Program Deactivator. Do you have any more wishes for the feature or overall software suite in the future?
22 Responses to “Behind the Scenes: TuneUp Program Deactivator”
Trackbacks/Pingbacks
- Geek Squeaks’ of the Week (#88) « What's On My PC
- 5 Reasons Why Program Deactivator is Good for Your PC » TuneUp Blog about Windows
- Happy Holidays from TuneUp! » TuneUp Blog about Windows
- TuneUp Utilities 2012 Full Version + Serial Number « shada8
- 10 Essential Tweaks: Pushing Your Gaming PC to Its Absolute Limit (Part 1) » TuneUp Blog about Windows
- The Essential Diablo 3 Tuning Guide: Diabolical Tweaking for Best FPS! » TuneUp Blog about Windows
- 10 Steps To Boost Multimedia Performance of Your PC (Part 1) » TuneUp Blog about Windows

(4 votes, average: 4.00 out of 5)



November 30, 2010 at 6:50 pm
Having recently bought my upgrade for the 3rd year in a row, I can say I’m a happy user of this amazingly well build piece of software.
So far the deactivator has worked pretty well for me.
Not sure if possible (maybe through advanced settings or so) but maybe it would be a good idea to be able to choose a list of “always must start programs, NO exception” then for all other apps always deactivate after use, as, so far, the start up time for deactivated apps is pretty transparent, this way it should be theoretically possible to keep the computer working as after a virgin install, but then every time you use it, month after month after month ………
Great program that is standard on every PC I use / will use in future, keep up the great work
November 30, 2010 at 8:11 pm
Hi SoundFreak,
thanks for your feedback, we are always happy if our software satisfies our customers
Regarding your suggestions: This are two great ideas. I will forward the first one to our development, let’s see, what they make out of it. For the second, it is planned to integrate this function. All Updates of the current version will be installed automatically with the Update Wizard.
Best,
Alexandra
December 9, 2010 at 11:11 pm
What I think?
It’s Awesome!!!
for now?, I really don’t know what I need More!
I have everything Great in one Masterpiece Software!
@SoundFreak, Great Idea!
Thanks Dear TuneUp Team for sharing experiences with us!
Warm Greetings
March 26, 2011 at 3:18 pm
Great product, you have all my respect!
An idea though: i would like to set something like “sticky deactivate”, that means, after a deactivated program is used (implies reactivation) on the next boot the program should still be deactivated.
This is very useful for complex software that we use rarely, it would be nice to have a temporary activation just for that use, and next time the os starts everything would be clean.:)
March 26, 2011 at 4:24 pm
Wow Fanke, it’s such a nice idea. I hope the respected Tune Up developers would surely take note about it. Really Tune Up 2011 is an awesome product.
Best, Jeet.
March 28, 2011 at 12:49 pm
Dear Fanke, Dear Jeet,
We’ve got a lot of feedback regarding a automatic re-deactivation feature, so far I am pretty sure, that we will have it in the new software
Lets keep in touch with our ideas/suggestions, that you may have.
Best,
Alexandra
July 5, 2011 at 10:25 am
Great article, thank you. Best greetz from germany.
November 19, 2011 at 6:32 am
after opening a program that is deactivated with tune up it is not posible to see the complete date information by pointing the cursor on the hour. Any of you have this problem?
best regards
December 17, 2011 at 6:28 am
Your registration does not work, not for me anyway. I made five tries, to two separate mail accounts – the verification is not sent.
December 23, 2011 at 1:39 pm
Hi Commander, thanks for letting us know. We did some updates and this might lead to technical problems. We will fix that asap (I guess it will take till beginning of next year, as holiday seasons just started).
Have a great holiday season, Alexandra
May 3, 2012 at 5:34 am
i like this feature,but deactivator don’t reactive apple device service when my iTunes starts,and some other stuffs. Can i manually config when reactive my service?
May 3, 2012 at 7:16 pm
Hi Leihao, thanks for your comment! I put this Forward to our development Team – we are working on Fixing this. Stay tuned.
Best, Sandro Villinger
Editor in Chief
June 17, 2012 at 4:46 am
special question:
is a wrapper used for this? if yes how much lower is the performance of the wrapped applications?
+ additional question
whats up with the tune up services running all the time in the background? they eat ram and cpu.
thx.
July 10, 2012 at 6:12 am
Program Deactivator is great! But after I have optimized the load, next time I opened the program all the ‘None’ (Impactless) programs were greyed-out in the disabled position and I cannot enable them. What do I do because I am having to open some programs (like DAP) before I can do anything. Thanks
May 8, 2013 at 10:20 am
I wasn’t quite sure whether this worked as expected as it would constantly give me messages on disabling Firefox, so I did some research and ended up at the sysinternals autoruns page:
http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx
And amazingly I found about a dozen entries in the Logon section, which go through Firefox but showed the same timestamp and were actually URIs by Skype, possible caused by a botched installation (installProgress and fail were some parts of the URIs). Once I removed these Firefox became “impactless” again; maybe you could consider some expert mode that deals with browser URIs like this (had I configured a different browser as default, then IE or chrome would have been shown, although Skype was the culprit).
From my own experience with designing UIs (Thunderbird + Fx Addons) I know that is not easy making complex tasks like this look simple. Keep up the good work!
thanks, Axel