C and C++

Moderators: None (Apply to moderate this forum)
Number of threads: 28691
Number of posts: 94711

This Forum Only
Post New Thread
Single Post View       Linear View       Threaded View      f

Report
protecting shareware in Visual C++ Posted by timelord50 on 13 Apr 2001 at 6:16 AM
I am thinking of writing a small shareware program. It will basically be a program to allow users to edit which program start-up with the computer. However I will try and add a few extra features to make it worthwhile with all the similar programs around.
I will have a shareware version & a full version. The full version can be downloaded once the customer has registered. But with the shareware version how would I either:
a) restrict the trial to 10-days or something- how do I monitor that the clock isn't set back etc.
b)or restrict the number of times the program can be used before it must be registered.


Report
Re: protecting shareware in Visual C++ Posted by WayTooHigh on 13 Apr 2001 at 7:54 AM
: I will have a shareware version & a full version. The full version can be downloaded once the customer has registered.
:

i've done some cr@cking* during my time at my computer. strictly educational! ;) honestly, there isn't much you can do. a cr@cker* can disassemble, change a few hex codes, and bypass any restrictions you have. it's fairly simple. or they could use a debugger to catch any API calls your program uses, with this method a cr@cker* can find the serial for a program with out having to register it. you may want to use an packer/encryptor. but, still... your program is not completely safe. there are numerous programs out there that will unpack/decrypt your program, no matter what packer/encryptor you're using. now, assuming that the user is completely legitimate:

: a) restrict the trial to 10-days or something- how do I monitor that the clock isn't set back etc.

1. the first time your program runs get the date.
2. write the date to the registry.
3. then every time your program runs, thereafter, get the date.
4. compare it with the date that was written in the registry the previous run.
5. if the current date is earlier than the date in the registry, do what ever you'd like. i.e. warn user, close program.

: b)or restrict the number of times the program can be used before it must be registered.

1. the first time your program runs write a value into the registry. i.e. Uses 1.
2. then every time your program runs, thereafter, get the value from the registry and increment it by one. i.e. Uses 2.
3. compare that value with "Uses 10" or whatever you like.
4. if not equal, write the incremented value to registry.
or. if equal, do what ever you'd like.

*: word is banned

/*[WayTooHigh]*/


Report
Re: protecting shareware in Visual C++ Posted by timelord50 on 13 Apr 2001 at 11:18 PM
I didn't realise that it's a simple reg key that shareware uses.

:i've done some cr@cking* during my time at my computer. strictly educational! ;) honestly, there isn't much you can do. a cr@cker* can disassemble, change a few hex codes, and bypass any restrictions you have. it's fairly simple. or they could use a debugger to catch any API calls your program uses, with this method a cr@cker* can find the serial for a program with out having to register it.

I can think up elaborate regsitration key schemes invloving making unlock codes from hardware id's, GUIDs etc. in the users machine. But I want to know- is it worth it? If *cr@cker*'s can see inside the inner workings of my programs that easily should I even bother or should I just go for the basic unlock key derived from the user's name or something similar.

Would my program be safer if I had two versions- a shareware one that would expire after 10 days or 10 uses or something and a completely different full version. The full version would be downloadable once the user has payed. The full version would be compiled from different source code as the shareware version. I realise this wouldn't protect me from *w@rez* sites and it would require some method of authentication on the server-side but would it protect me from *cr@ckers*?

And for f***'s sake programmer's heaven- remove your restrictions on the word '*cr@cker*'- it's something we all have to deal with as programmers.

Report
Re: protecting shareware in Visual C++ Posted by Spida on 13 Apr 2001 at 11:46 PM

Why don't you stip down the freeware version so there are less features, but also not bother with the timebombs, reg keys, nags, etc.

It is possible to benefit both the developer and the user without comprimising quality.

If you want an incentive for the user to purchase your full version, you should make it clear that there is a *full* version. For example, call your freeware version "Start-Up Manager 1.0 LITE" or something, and then refer to the full version in your documentary occassionally , etc.

-- Spida.


Report
Re: protecting shareware in Visual C++ Posted by timelord50 on 14 Apr 2001 at 2:46 AM
:
: Why don't you strip down the freeware version so there are less features, but also not bother with the timebombs, reg keys, nags, etc.

Hadn't thought of that- good idea. But I would have thought that that approach would only generate sales for the full version in large, complex programs such as mail clients. eg Eudora,Eudroa lite.
Anyone had any experience selling software under this model?







 

Recent Jobs

Official Programmer's Heaven Blogs
Web Hosting | Browser and Social Games | Gadgets

Popular resources on Programmersheaven.com
Assembly | Basic | C | C# | C++ | Delphi | Flash | Java | JavaScript | Pascal | Perl | PHP | Python | Ruby | Visual Basic
© Copyright 2011 Programmersheaven.com - All rights reserved.
Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Operated by CommunityHeaven, a BootstrapLabs company.