473,385 Members | 1,645 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,385 software developers and data experts.

Try&Buy

Hi
I am trying to do a Try&Buy application. After Try expiration I don't want
the application to be possible to use just by re-installing. How to do this?
Write something somewhere in the registry?

/SåA
Nov 15 '05 #1
3 1254
This is something that you can do in several ways:
1. Indeed, by writing something in the registry, a cripted value that
contains the expiration date. If the date is > than that date in the
registry or the registry key does not exists you can disable/uninstall the
application
2. Making the same thing in a file.

But there's a problem in .Net, the reverse engineering, you cannot stop
anyone to reverse engineer your app and take out the validity check... With
an obfuscator you'll make this thing more difficult but still possible.

Another approach can be in using a small COM dll which embeds some
functionality (not only the validity check) to validate the app. Since COM's
are more difficult to reverse engineer it will be more secure. If you embed
some app functionality in it, it could not easily be replaced by one maked
by the cracker. But it is a good idea to avoid to combine .Net with COM....

--
Horatiu Ripa

"SvenÅke Andersson" <sv****************@saabtech.se> wrote in message
news:uW*************@TK2MSFTNGP11.phx.gbl...
Hi
I am trying to do a Try&Buy application. After Try expiration I don't want
the application to be possible to use just by re-installing. How to do this? Write something somewhere in the registry?

/SåA

Nov 15 '05 #2
Try using a License manager and a .licx file. Infragistics and Dart use
them and they are pretty cool...so does Ants for that matter.
"SvenÅke Andersson" <sv****************@saabtech.se> wrote in message
news:uW*************@TK2MSFTNGP11.phx.gbl...
Hi
I am trying to do a Try&Buy application. After Try expiration I don't want
the application to be possible to use just by re-installing. How to do this? Write something somewhere in the registry?

/SåA

Nov 15 '05 #3

"Horatiu Ripa" <ho**********@businesslogic.co.uk> wrote in message
news:es*************@tk2msftngp13.phx.gbl...
This is something that you can do in several ways:
1. Indeed, by writing something in the registry, a cripted value that
contains the expiration date. If the date is > than that date in the
registry or the registry key does not exists you can disable/uninstall the
application
2. Making the same thing in a file.

But there's a problem in .Net, the reverse engineering, you cannot stop
anyone to reverse engineer your app and take out the validity check... With an obfuscator you'll make this thing more difficult but still possible.

Another approach can be in using a small COM dll which embeds some
functionality (not only the validity check) to validate the app. Since COM's are more difficult to reverse engineer it will be more secure. If you embed some app functionality in it, it could not easily be replaced by one maked
by the cracker. But it is a good idea to avoid to combine .Net with

COM....

Or, rather than COM, simply a DLL written in C or C++ and called with
PInvoke.
Nov 15 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

30
by: Kong Bhat | last post by:
With XML becoming the de facto data description standard, I am extremely surprised that there is no movement towards standardizing an xml library API for use with C and C++. Personally I have been...
19
by: Thomas Matthews | last post by:
Hi, Given a structure of pointers: struct Example_Struct { unsigned char * ptr_buffer; unsigned int * ptr_numbers; }; And a function that will accept the structure:
20
by: wolftor | last post by:
Would anyone be willing to beta test my application for me and give me some feedback? I can give you feedback in exchange (ie. if there are parts you're interested in knowing how it was done) or I...
46
by: Herrcho | last post by:
Hi~ i've studied C for a few months myself, and i'd appreciate it if anyone could improve my coding or correct it. the following is my solution to the K&R exercise 2-3 "Write the function...
72
by: Paminu | last post by:
In math this expression: (a < b) && (b < c) would be described as: a < b < c But why is it that in C these two expressions evaluate to something different for the same values of a, b and...
3
by: andrewcw | last post by:
I have a class with a number of functions. For some form of errors I wanted to use the MessageBox function of Window.Forms. I want to reuse this code in a console application, but now I see I...
21
by: christopher | last post by:
hi, i'm working with data for a clinical trial. i write data edit-checks using a program called DataFax, which has its own built-in programming language which is loosely based on C. as such, the...
1
by: Jamiil | last post by:
This is the first time I am ever using JavaScript, I am not even elocuent in HTML, all I am is someone who has Microsoft/Netscape Webpage developers. What I am trying to say is that I am not an...
5
by: herbert | last post by:
back in 1978 (!) the VAX/VMS serial line driver offered everything a developer needs to develop protocols of all kinds: - read x bytes - read to end of line - read to special character - read...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.