uniquely identifies a computer
-
Hi All, does the WIN32_BIOS uniquely identifies a windows box globally, even this windows box does not connect to any network. I want to propose a licencing schema that minimise the pirating of my software.
If it was that simple, then everyone would do it! There are a number of unique numbers you can get, for example Processor, NIC, HDD, and so forth, so you can generate a code sequence which will ID a PC pretty well, but you have to tie that back (normally via a website) to your system. It is going to depend on a range of factors: How much you want to protect your software against the irritation to genuine users. What kind of users are you talking about - mass market will have hackers playing with it if it is any good, more specialised users may need less protection For example, if I buy software, then replace my network card and have to re-install then I generally become annoyed and tend not to buy that software again. Some users don't like to connect to internet every time they try to use software - it's a privacy or a dial up issue. You are not alone in this: Google for "unique pc identifier" and you will get millions of hits! Sorry not to be much help, but it isn't a case of "do this and it will be ok" - it's more "how much effort will you have to put in to achieve the result you need"
If Barbie is so popular, why do you have to buy her friends? Eagles may soar, but weasels don't get sucked into jet engines. If at first you don't succeed, destroy all evidence that you tried.
-
Hi All, does the WIN32_BIOS uniquely identifies a windows box globally, even this windows box does not connect to any network. I want to propose a licencing schema that minimise the pirating of my software.
-
Hi All, does the WIN32_BIOS uniquely identifies a windows box globally, even this windows box does not connect to any network. I want to propose a licencing schema that minimise the pirating of my software.
You should probably use WMI to gather a system-specific info string, and encrypt it, and transfer the encrypted info to a database that's not on the user's machine. When the program runs, it should perform this same process, and if the encrypted string it comes up with doesn't match what's in the database, don't let the program run. A few considerations: 0) if there is no internet connection, the program should run as it normally would if it was validated. 1) If it can't find the validation server, the program should run as it normally would if it was validated. 2) In the event that the app goes EOL or you no longer want to require remote validation, provide a method for the program to run WITHOUT checking the validation server. My suggestoion is an entry in the app.config file that tells the app not to bother checking.
.45 ACP - because shooting twice is just silly
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001 -
If it was that simple, then everyone would do it! There are a number of unique numbers you can get, for example Processor, NIC, HDD, and so forth, so you can generate a code sequence which will ID a PC pretty well, but you have to tie that back (normally via a website) to your system. It is going to depend on a range of factors: How much you want to protect your software against the irritation to genuine users. What kind of users are you talking about - mass market will have hackers playing with it if it is any good, more specialised users may need less protection For example, if I buy software, then replace my network card and have to re-install then I generally become annoyed and tend not to buy that software again. Some users don't like to connect to internet every time they try to use software - it's a privacy or a dial up issue. You are not alone in this: Google for "unique pc identifier" and you will get millions of hits! Sorry not to be much help, but it isn't a case of "do this and it will be ok" - it's more "how much effort will you have to put in to achieve the result you need"
If Barbie is so popular, why do you have to buy her friends? Eagles may soar, but weasels don't get sucked into jet engines. If at first you don't succeed, destroy all evidence that you tried.
Thanks alot for your posting and actually it was quite helpful, I think i might use several hardware ids to protect my software, such as i could validate processor serial number, motherboard Id, MAC address, hard disk serial number etc. if any of these Ids can be validated, then we would say the software is geniune user. If a uses completely upgrade his/her system, then the user has to let us know.
-
You should probably use WMI to gather a system-specific info string, and encrypt it, and transfer the encrypted info to a database that's not on the user's machine. When the program runs, it should perform this same process, and if the encrypted string it comes up with doesn't match what's in the database, don't let the program run. A few considerations: 0) if there is no internet connection, the program should run as it normally would if it was validated. 1) If it can't find the validation server, the program should run as it normally would if it was validated. 2) In the event that the app goes EOL or you no longer want to require remote validation, provide a method for the program to run WITHOUT checking the validation server. My suggestoion is an entry in the app.config file that tells the app not to bother checking.
.45 ACP - because shooting twice is just silly
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001 -
Then please vote it as a good answer. :)
.45 ACP - because shooting twice is just silly
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001