GetSystemFirmWareTable函数读取BIOS信息
RT,利用该函数读取BIOS序列号,或者您讲解一下该函数的用法也行,跪求大神了!!
[解决办法]
直接MSDN不就可以了
http://msdn.microsoft.com/zh-cn/library/ms724379(v=VS.85).aspx
[解决办法]
DWORD iSignature = 'R'; //RSMB
iSignature = iSignature << 8
[解决办法]
'S';
iSignature = iSignature << 8
[解决办法]
'M';
iSignature = iSignature << 8
[解决办法]
'B';
int iBufferSizeNeeded = GetSystemFirmwareTable( iSignature, 0, 0, 0 );
char buff[1024*2] = {0};
GetSystemFirmwareTable( iSignature, 0, buff, iBufferSizeNeeded);
RawSMBIOSData *p;
p = (RawSMBIOSData *)buff;
if(p->Length != iBufferSizeNeeded - 8)
{
return 0;
}
p->SMBIOSTableData = (BYTE *)(buff + 8);
int size;
size = 0;
while(size < p->Length)
{
if(p->SMBIOSTableData[size] > 32)
{
printf("%s\n",p->SMBIOSTableData + size);
}
size += (int)strlen(buff + size) + 1;
}