Remember my post about fighting software piracy? A quick summary:
Don’t bother protecting your software against piracy. Your software will get cracked anyway.
If your software is protected, it will only take slightly longer before the cracker publishes his crack. Making the cracker’s life harder has no effect whatsoever on the number of users that get access to a cracked copy of your software.
In any case, don’t let piracy irritate you, drain your energy, waste your time or take away your focus from the important stuff: Improving and selling your software.
Well… I changed my mind…
I must say that my frustration with software protection was based on using Armadillo (now called SoftwarePassport). We have used it on and off for a couple of years. And each time we tried using it again, we immediately got complaints from users that the new build was suddenly slower or that it just crashed very often. Others even reported that the new build just refused to start on their machine.
Customer support was a nightmare: for every weird bug that was reported, we found ourselves wondering: Is this really a bug in *our* code, or is it caused by Armadillo again.
Also, our software got cracked anyway. For most new versions it took about a week before a crack was released, whereas unprotected builds got cracked within a day.
So we stopped using Armadillo and just released unprotected executables.
Anyway, after posting the above article, I received a lot of reactions.
Some of them proving my point, as they showed some developers can *really* get worked up about their software being pirated 🙂
But others suggested that I should take a look at WinLicense / Themida.
WinLicense is a full software license control and software protection system. Themida is just the software protection system. We have our own license key system that is fully integrated into our customer database and ordering system, so WinLicense doesn’t apply to our situation. Themida sounded great though, so I decided to buy a copy and test it.
Software Protection Requirements
First, here’s my set of requirements for a good software protection solution, in order of importance:
- Must be quick to implement and hassle-free
- Doesn’t cause weird crashes or other bugs
- Doesn’t cause conflicts with other software (virus scanners, firewalls, etc..).
- Doesn’t impact performance
- Makes it hard or impossible to crack the software
I still want to spend as little time as possible on piracy protection and I don’t want any negative side-effects.
In the first week of October, we released Themida-protected builds of both Music Collector and Book Collector. After these releases, we started closely monitoring support tickets and our forum for reports of strange behaviour, crashes, conflicts, etc… And of course, I kept an eye on new cracks being published (I use Google Alerts for that).
After a week, we had not heard of any problems from our users. Which is a good sign, because usually, if there’s something wrong with a new build we know within a day (having a lot of existing customers has many advantages).
And I could not find any cracks of the new versions either.
A couple of weeks after these releases, there was a forum post from a developer (and Book Collector user), who found that Book Collector refused to start while Sysinternals Process Monitor was running (“A monitor program has been found running in your system”). One other Book Collector user confirmed he had the same issue.
A week later one other developer (and Music Collector user) reported a similar issue with Sysinternals Process Explorer. He was quite angry though:
My current version of Music Collector (Version 8.7 build 1) refuses to
start due to this Themida technology, which I assume is newly included
in it. For the first time ever, I’m getting this error on program
launch: “A monitor program has been found running in your system
Please, unload it from memory and restart your program”.
Why doesn’t Themida identify the app that it thinks is a monitor
I’m pretty sure from web research that it has a problem with
Sysinternal Process Explorer–is that true? If so, let me tell you
that that is COMPLETELY UNACCEPTABLE! I’ve been using PE forever, and
I have it set to replace the Windows Task Manager, and I also have it
launch during Windows logon so that it’s pretty much always running.
Disabling it and rebooting every time I want to run Music Collector is
I’m a developer and need PE. Furthermore, Windows is often unstable
and I use PE to resolve problems; I’m sure I’m not alone in this. If
this is the app that Themida is complaining about, then you’re forcing
me to stop using one or the other, PE or Music Collector. Why??
I need an answer before I reluctantly uninstall Music Collector
And that was it. No other conflicts with virus scanners, firewalls or anything. No weird Access Violations or other strange crashes. No reports of our software taking a long time to start, or performing slower than before.
And still no cracks.
Final test: protecting Movie Collector
After the successful test with Music Collector and Book Collector, it was time to go for the big one: Movie Collector.
Movie Collector is our most popular program, with the largest installed base. Plus it has always been very popular in the pirate scene (probably for cataloging their pirated movies). In the past, we’ve seen new Movie Collector versions being cracked within a day.
So on November 23, we released our first Themida-protected version of Movie Collector, version 6.5.
And to date, we have received no problem reports about it whatsoever (not even from developers). And what’s even more surprising, I still can’t find any version 6.5 cracks.
My revised view on piracy protection
Themida proved that it is possible to protect software against crackers (or at least make it very hard or time-consuming to crack), without causing conflicts or other software problems.
And more importantly, without spending a lot of time.
So if you want to protect your software against piracy, please don’t spend days or weeks building your own system (and constantly tweaking it for years to come). Just buy a copy of Themida (it’s ridiculously cheap) and spend a couple of minutes adding it to your build process. Then forget about piracy and spend your time improving your software and selling more of it.
Anyway, I think this post on a crack site sums it all up:
I would be very happy if someone had the crack for movie collector 6.5.1, I think I have seached the whole net for it now. It dont look like the crack excist, but that must be a first time ever if its true. Will be very thankfull if someone finds that crack or serial