Jump to content

Recommended Posts

Posted

It appears that UUID information is stored at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Mssmbios\Data.

But...

At system startup all informations from there are collected by mssmbios.sys (that is SMBIOS driver).

Then something happens. This driver deletes (zeroes out) few data fields. UUID section inclusively, probably for security reasons.

All that is collected is stored in a special buffer.

Question is how to acces data in that buffer. WMI is the answer and was the only method until kernel32.dll got two functions EnumSystemFirmwareTables() and GetSystemFirmwareTable().

How do I know this? I read document named SMBIOS.doc

Find it, it's 112KB doc file. When you are finished reading, you will probably say: "So that's how WMI works! :) "

♡♡♡

.

eMyvnE

  • Moderators
Posted

It appears that UUID information is stored at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Mssmbios\Data.

But...

At system startup all informations from there are collected by mssmbios.sys (that is SMBIOS driver).

Then something happens. This driver deletes (zeroes out) few data fields. UUID section inclusively, probably for security reasons.

All that is collected is stored in a special buffer.

Question is how to acces data in that buffer. WMI is the answer and was the only method until kernel32.dll got two functions EnumSystemFirmwareTables() and GetSystemFirmwareTable().

How do I know this? I read document named SMBIOS.doc

Find it, it's 112KB doc file. When you are finished reading, you will probably say: "So that's how WMI works! :) "

I wouldn't be disappointed yet.

Supported Operating Systems: Windows Vista, Windows XP Professional x64 Edition

So your theory wouldn't work with Windows XP SP2 and below.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

  • Moderators
Posted

Ok guys all solutions NEVER WORK FOR ME, any 1 can plz help me ?

For simplicity sake, use DriveGetSerial.

The only issue you'll run into that UUID usually solves is if it's cloned in a virtual environment and passed around (DriveGetSerial won't help you there).

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

  • 3 months later...
Posted (edited)

Hey, Thanks! You saved my day right now!

spyro

spyro that is not UUID that should be saving you in the context of this thread. That 'string' changes for every next call. Edited by trancexx

♡♡♡

.

eMyvnE

Posted

MAC address would be a start. If you want to get hold of it (and lots of other interesting information), you should start by taking a look at this message : http://www.autoitscript.com/forum/index.ph...st&p=513225

Note the comment for ProgAndy (two posts latest) about increasing the size of the structure on line 109. You could take the output from _IPH_Capture() and parse it in to an XML DOM for further processing.

Regards,

WBD

  • 5 weeks later...
Posted

Universally unique identifier (UUID) for this product. A UUID is a 128-bit identifier that is guaranteed to be different from other generated UUIDs. If a UUID is not available, a UUID of all zeros is used.

http://msdn.microsoft.com/en-us/library/aa394105(VS.85).aspx

I'm using the following code:

Func _GetUUID()
    Local $oWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\localhost\root\cimv2")
    If Not IsObj($oWMIService) Then
        Return SetError(1, 0, -1)
    EndIf
    Local $oSysProd = $oWMIService.ExecQuery("Select * From Win32_ComputerSystemProduct")
    For $oSysProp In $oSysProd
        Return SetError(0, 0, $oSysProp.UUID)
    Next
    Return SetError(2, 0, -1)
EndFunc

InputBox('UUID', 'Computer Universally Unique Identifer', _GetUUID())

I get:

00000000-0000-0000-0000-000000000000

Does anyone have an idea how to force one to be generated?

Is there another method of getting or creating a Unique System ID?

Thanks.

  • 6 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...