How can I get motherboard Serial number?

  • Thread starter Thread starter cartooncat
  • Start date Start date
C

cartooncat

I want to get motherboard serial number to protect copyright in my software.
But I don't know how to do.
I got some code from Internet:

Imports System.Management
Dim searcher As New ManagementObjectSearcher("SELECT * FROM
Win32_BaseBoard")
Dim share As ManagementObject

For Each share In searcher.Get()
Debug.WriteLine("manufacturer:" & share("Manufacturer"))
Debug.WriteLine("Product:" & share("Product"))
Debug.WriteLine("SerialNumber:" & share("SerialNumber"))
Next share

but it only return "Product" item, the other two is null.
How can I get unique MotherBoard Serial Number?
Waiting help.....!!!!
 
....
How can I get unique MotherBoard Serial Number?

Why do you assume that there is a serial number on every PC? Or if there is
one, why assume it's available to you? Maybe I don't want you to have it?
 
Be careful, Intel has tried to make use of processor id for the same purpose
and got their finger burned. Then again, not everything in the computer
(including motherboard and processor) have a serial number and/or a serial
number that is accessible. That is why Global Unique Identifier use the
Network Card.

If you want to lock the software for a single machine, try the registry

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ProductId

that should be unique.

Yoz
 
yoz said:
If you want to lock the software for a single machine, try the registry

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ProductId

that should be unique.

Personally, I like to put a GUID somewhere on the customer machine and call
_that_ the serial number. It's meant to be unique, after all.
 
Hi John,

I don't have any objection to using GUID, they are unique globally (as long
as you have a network card it seems).

Let's do a scenario here.

1. The software provider generates a key and install it on the client
computer in the registry.
2. A guy comes and want to copy the software. all he need to do is to export
the GUID and import it in his own registry at home

Now with Microsoft Product ID

1. The software provider find the O/S (Windows) ProductID from the registry
and lock his software installation to work only with this Product ID
2. A guy comes and want to copy. He has a choice, mess around with the O/S
Information and risk his system malfunctionning or get a genuine copy (or
one that has been hacked not to do the check at all but that is another
problem).

Yoz
 
My purpose is set my software binding to unique PC but not unique OS. If the
user update his OS e.g. from WIN2000 to WinXP , the registry key won't
change. "ProductId" or "GUID" can do this?
 
Yet if the user replaces his failed motherboard (or simply upgrades) you
won't allow them to use their SW anymore. Doesn't make much sense to me...

Jerry
 
cartooncat said:
My purpose is set my software binding to unique PC but not unique OS. If the
user update his OS e.g. from WIN2000 to WinXP , the registry key won't
change. "ProductId" or "GUID" can do this?

A GUID would do this. Once it's generated, it wouldn't change.

But "yoz" raises some other interesting objections to using one.

I'll admit that I haven't given serious consideration to this issue in a
while, because I gave up the quest for "copy protection" over a decade ago
and got on with my life.
 
....
Let's do a scenario here.

1. The software provider generates a key and install it on the client
computer in the registry.
2. A guy comes and want to copy the software. all he need to do is to export
the GUID and import it in his own registry at home

Assuming he finds it, assuming you left it there in the clear, assuming you
left it in the registry to begin with...
Now with Microsoft Product ID

1. The software provider find the O/S (Windows) ProductID from the registry
and lock his software installation to work only with this Product ID
2. A guy comes and want to copy. He has a choice, mess around with the O/S
Information and risk his system malfunctionning or get a genuine copy (or
one that has been hacked not to do the check at all but that is another
problem).

Interesting. First, how do you "lock your installation" to the Product ID?
What would prevent the user from taking the original distribution media and
installing on another system?

Second, you should consider that the "Microsoft Product ID" belongs to
Microsoft. They could decide to change it upon the upgrade of the OS, at
which time you'd have a problem. Use something of your own, and you have
only yourself to worry about.

For most software products, one might do better giving up on copy protection
and providing instead:

1) Great support
2) Vicious prosecution of anyone stupid enough to get caught (like the
person who steals a copy but doesn't bother telling his staff its stolen -
so the staff call support)
 
Back
Top