i see. serial stickers are quite cheaper than branding plates^^.
i see. serial stickers are quite cheaper than branding plates^^.
regards,
NG
It's not the same serial as on the actual sticker on the box (or it might be encoded some way), but it's the same concept.
Edit:
Disregard above text, I was looking at the wrong log. It IS the same serial as on the box and written under the mouse.
Last edited by _Mike; 01-20-2012 at 01:56 PM.
GUID is a a unique identifier for every device installed on your computer and they do look at this GUID to see if its match and has not been used yet.
The CM_Get_Device_ID_Ex function retrieves the device instance ID for a specified device instance.
The CM_Get_DevNode_Status_Ex function obtains the status of a device instance from its device node.
The CM_Get_DevNode_Registry_Property_Ex function retrieves a specified device property from the registry.
void EnumDeviceProperties(DEVNODE dn)
{
int BufferSize = MAX_PATH + MAX_DEVICE_ID_LEN;
TCHAR Buffer[MAX_PATH + MAX_DEVICE_ID_LEN];
CString Temp;
DeviceProperties Properties[26]=
{
ID_DEVICEID, _T("Device ID: "), _T(""),
ID_STATUS, _T("Status: "), _T(""),
ID_PROBLEM, _T("Problem: "), _T(""),
ID_SERVICE, _T("Service: "), _T(""),
...
};
if (CM_Get_Device_ID_Ex(dn, Buffer, BufferSize, 0, m_hMachine)
== CR_SUCCESS)
{
Temp=Buffer;
}
else
{
Temp=_T("Fail to retrieve Device ID");
}
ULONG Status, Problem;
if (CM_Get_DevNode_Status_Ex(&Status, &Problem, dn, 0, m_hMachine)
== CR_SUCCESS)
{
Temp.Format(_T("0xx"), Status);
Temp.Format(_T("0xx"), Problem);
}
else
{
Temp=_T("Fail to retrieve Device Status/Problem");
}
Temp=GetProperty(dn, CM_DRP_SERVICE);
Temp=GetProperty(dn, CM_DRP_CAPABILITIES);
...
}
CString GetProperty(DEVNODE dn, ULONG Property)
{
CString Temp;
TCHAR Buffer[REGSTR_VAL_MAX_HCID_LEN]=_T("");
ULONG Type;
ULONG Size = sizeof(Buffer);
if (CM_Get_DevNode_Registry_Property_Ex(dn, Property,
&Type,
Buffer,
&Size,
0, m_hMachine) == CR_SUCCESS)
{
if (Type == REG_DWORD ||
Type == REG_MULTI_SZ ||
Type == REG_SZ )
{
if (Type == REG_DWORD)
{
DWORD Data = *((DWORD*)Buffer);
wsprintf(Buffer, _T("0xx"), *((DWORD*) Buffer) );
}
else if (Type == REG_MULTI_SZ)
{
LPTSTR p = Buffer;
while (_T('\0') != *p)
{
p += lstrlen(p);
if (_T('\0') != *p)
*p++ = _T(',');
}
}
}
}
Temp=Buffer;
return Temp;
}
Im working on it at the moment to let peoples insert their own guid and enumerate Razor Hardwares.
Last edited by pansonic; 01-20-2012 at 06:40 PM.
so any news on this ?
Well, looks like acquiring color crystal impossible without actual device...
Any developments on this? I don't mean to revive a dead post, but i really want this to work.
You would have to fake a unique serial number. Synapse 2.0 uploads to razer server for verification then displays the code for you to use. The code is unique to each device and based on the serial number as code is always the same.
So you would need to fool you pc into thinking it had a razer swtor device connected, then generate a false serial number to send to the synapse server that could be validated...
Sounds like a helva lot of work