Diesel Posted April 22, 2005 Posted April 22, 2005 If I wanted to create an evaluation of say 30 days for an application, how do I get around the fact that the user can change the windows time. Is there another datetime clock i can access? Or can I tell if the windows clock has been touched? Quote
SonicBoomAu Posted April 22, 2005 Posted April 22, 2005 Could you write a registry key which you check on the form load event. - Firstly capturing the first time program was used (22 Apr 05) - create date 30 days in advance (22 May 05) - If 0 then still within 30 day period. - if 22 May 05 set value to 1 - If 1 over 30 day period. Therefore it wouldn't matter if the user changed the time after the 30 day period. Hope this give you some food for thought Quote Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -- Rick Cook, The Wizardry Compiled
Diesel Posted April 22, 2005 Author Posted April 22, 2005 Using the registry would be a last resort. It can easily be edited. Quote
Leaders snarfblam Posted April 22, 2005 Leaders Posted April 22, 2005 Using the registry would be a last resort. It can easily be edited.[/Quote] Yes... I have first hand experience with this particular issue. I don't have much experience with this topic, thought... but you can use the registry... use some sort of encryption, and if the key is invalid or missing, your app should not run. (The initial key could be written by a deployment program.) I have seen apps that used such a technique. Also, you can record the system's time when your app opens and closes. If the computer ever travels back in time, pop up a dialog that asks the user where you could buy a flux capacitor (and then have the app exit, of course). Quote [sIGPIC]e[/sIGPIC]
Afraits Posted April 22, 2005 Posted April 22, 2005 What about the cunning person who puts the clock forward to say 2010 before installing the app and then once installed returns the clock to its normal setting? Quote Afraits "The avalanche has started, it is too late for the pebbles to vote"
kejpa Posted April 22, 2005 Posted April 22, 2005 ok, you have an evaluation time and of course you want to get paid for your work. But how many people will go through changing the computer clock back and forth just to use your program? There are a number of other applications in your computer that relies on a correct (well, almost correct at least) setting of the time. If you in a binary form enters to the registry the first run, writes the latest start and finish time in a different location (or two maybe) you can compare dates and times but against installation time and last finish time. But is it worth it? The extra time you have to spend on fiddling with different settings, all extra code you have to write to check if the user has been changing the clock. Will it pay back in sense of money for you application? I'd implement some basic checking but if the users tamper with the clock or registry I'd let them. After all, what stops them from completely reinstalling the computer and use your program for another 30 days..... That's my 2c /Kejpa Quote
mark007 Posted April 22, 2005 Posted April 22, 2005 What about the cunning person who puts the clock forward to say 2010 before installing the app and then once installed returns the clock to its normal setting? That's still going back in time so would be caught under marble's suggestion which is a method that I use. I have to partly agree with kejpa though that clock tampering is fairly unlikely. If you really wanted to get round it you could require an internet connection to run and store the times on a web server using the MAC address or HD serial for a unique key. Alternatively you could require this just once on initial start and use marbles suggestion for clock tampering. You would then stop them reinstalling windows and the app as they'd also have to replce the NIC and HD to get it working ;) :) Quote Please check the Knowledge Base before you post. "Computers are useless. They can only give you answers." - Pablo Picasso The Code Net
Leaders snarfblam Posted April 22, 2005 Leaders Posted April 22, 2005 But how many people will go through changing the computer clock back and forth just to use your program?[/Quote] More than you think. When piracy or any other form of "free" software is easy to obtain, in my experience, people will take advantage. Quote [sIGPIC]e[/sIGPIC]
kejpa Posted April 25, 2005 Posted April 25, 2005 More than you think. When piracy or any other form of "free" software is easy to obtain' date=' in my experience, people [i']will[/i] take advantage. I'm sure there are quite a few that will change the clock, if that's all it takes. Done that myself too ;) but since it interfered too much with other more relevant things I needed to do (ie send mail) and caused those things NOT to work I stopped. I'm not saying that Diesel shouldn't have some basic evaluation, my point is that it's not worrth spending time to outsmart all options since you can't. How can you stop someone from reinstall Windows in order to keep using the program? With 'net connection it's possible, but as my key point is, Is it worth the extra time and effort? /Kejpa Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.