Пример #1
0
bool ProcSysInfo(void* p)
{
	PSystemInfo pSystem = (PSystemInfo)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(1));
	_tprintf(TEXT("Manufacturer: %s\n"), LocateString(str, pSystem->Manufacturer));
	_tprintf(TEXT("Product Name: %s\n"), LocateString(str, pSystem->ProductName));
	_tprintf(TEXT("Version: %s\n"), LocateString(str, pSystem->Version));
	_tprintf(TEXT("Serial Number: %s\n"), LocateString(str, pSystem->SN));
	// for v2.1 and later
	if (pSystem->Header.Length > 0x08)
	{
		_tprintf(TEXT("UUID: %02X%02X%02X%02X-%02X%02X-%02X%02X-%02X%02X-%02X%02X%02X%02X%02X%02X\n"),
			pSystem->UUID[0], pSystem->UUID[1], pSystem->UUID[2], pSystem->UUID[3],
			pSystem->UUID[4], pSystem->UUID[5], pSystem->UUID[6], pSystem->UUID[7],
			pSystem->UUID[8], pSystem->UUID[9], pSystem->UUID[10], pSystem->UUID[11],
			pSystem->UUID[12], pSystem->UUID[13], pSystem->UUID[14], pSystem->UUID[15]);
	}

	if (pSystem->Header.Length > 0x19)
	{
		// fileds for spec. 2.4
		_tprintf(TEXT("SKU Number: %s\n"), LocateString(str, pSystem->SKUNumber));
		_tprintf(TEXT("Family: %s\n"), LocateString(str, pSystem->Family));
	}
	return true;
}
Пример #2
0
bool DispatchStructType(PSMBIOSHEADER hdr)
{
	typedef struct {
		BYTE t;
		bool(*Proc)(void* p);
	} TPFUNC;

	const TPFUNC	tpfunc[] = {
		{ 0, ProcBIOSInfo },
		{ 1, ProcSysInfo },
		{ 2, ProcBoardInfo },
		{ 3, ProcSystemEnclosure },
		{ 4, ProcProcessorInfo },
		{ 6, ProcMemModuleInfo },
		{ 7, ProcCacheInfo },
		{ 11, ProcOEMString },
		{ 17, ProcMemoryDevice },
		{ 19, ProcMemoryArrayMappedAddress },
		{ 22, ProcPortableBattery },

	};

	for (UINT i = 0; i < sizeof(tpfunc) / sizeof(TPFUNC); i++)
	{
		if (tpfunc[i].t == hdr->Type)
		{
			_tprintf(TEXT("%s\n"), getHeaderString(cstrHEADER));
			tpfunc[i].Proc((void*)hdr);
			return true;
		}
	}

	return false;
}
Пример #3
0
bool ProcOEMString(void* p)
{
	PSMBIOSHEADER pHdr = (PSMBIOSHEADER)p;
	const char *str = toPointString(p);
	_tprintf(TEXT("%s\n"), getHeaderString(11));
	_tprintf(TEXT("OEM String: %s\n"), LocateString(str, *(((char*)p) + 4)));

	return true;
}
Пример #4
0
bool ProcCacheInfo(void *p)
{
	PCacheInfo	pCache = (PCacheInfo)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(7));
	_tprintf(TEXT("Length: 0x%X\n"), pCache->Header.Length);
	_tprintf(TEXT("Socket Designation: %s\n"), LocateString(str, pCache->SocketDesignation));

	return true;
}
Пример #5
0
bool ProcMemModuleInfo(void* p)
{
	PMemModuleInfo	pMemModule = (PMemModuleInfo)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(6));
	_tprintf(TEXT("Length: 0x%X\n"), pMemModule->Header.Length);
	_tprintf(TEXT("Socket Designation: %s\n"), LocateString(str, pMemModule->SocketDesignation));
	_tprintf(TEXT("Current Speed: %dns\n"), pMemModule->CurrentSpeed);

	return true;
}
Пример #6
0
	String Request::getHeaderString(const StringRef& header, DWORD size) {
          String txt = header;
		  if (HttpQueryInfo(_hRequest , HTTP_QUERY_CUSTOM , txt.useBuffer<char>(size) , &size , 0)) {
			  txt.releaseBuffer<char>(size);
               return txt;
          } else {
               if (GetLastError()==ERROR_INSUFFICIENT_BUFFER) {
                    return getHeaderString(header, size + 1);
               } else {
                    return "";
               }
          }
     }
Пример #7
0
bool ProcMemoryArrayMappedAddress(void*	p)
{
	PMemoryArrayMappedAddress pMAMA = (PMemoryArrayMappedAddress)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(19));
	_tprintf(TEXT("Length: 0x%X\n"), pMAMA->Header.Length);
	_tprintf(TEXT("Starting Address: 0x%08X\n"), pMAMA->Starting);
	_tprintf(TEXT("Ending Address: 0x%08X\n"), pMAMA->Ending);
	_tprintf(TEXT("Memory Array Handle: 0x%X\n"), pMAMA->Handle);
	_tprintf(TEXT("Partition Width: 0x%X\n"), pMAMA->PartitionWidth);
	return true;
}
Пример #8
0
bool ProcSystemEnclosure(void* p)
{
	PSystemEnclosure pSysEnclosure = (PSystemEnclosure)p;
	const char *str = toPointString(p);
	_tprintf(TEXT("%s\n"), getHeaderString(3));
	_tprintf(TEXT("Length: 0x%X\n"), pSysEnclosure->Header.Length);
	_tprintf(TEXT("Manufacturer: %s\n"), LocateString(str, pSysEnclosure->Manufacturer));
	_tprintf(TEXT("Version: %s\n"), LocateString(str, pSysEnclosure->Version));
	_tprintf(TEXT("Serial Number: %s\n"), LocateString(str, pSysEnclosure->SN));
	_tprintf(TEXT("Asset Tag Number: %s\n"), LocateString(str, pSysEnclosure->AssetTag));

	return true;
}
Пример #9
0
bool ProcProcessorInfo(void* p)
{
	PProcessorInfo	pProcessor = (PProcessorInfo)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(4));
	_tprintf(TEXT("Length: 0x%X\n"), pProcessor->Header.Length);
	_tprintf(TEXT("Socket Designation: %s\n"), LocateString(str, pProcessor->SocketDesignation));
	_tprintf(TEXT("Processor Manufacturer: %s\n"), LocateString(str, pProcessor->Manufacturer));
	_tprintf(TEXT("Processor Version: %s\n"), LocateString(str, pProcessor->Version));
	_tprintf(TEXT("External Clock: %dMHz, 0MHz is unknown clock\n"), pProcessor->ExtClock);
	_tprintf(TEXT("Max Speed: %dMHz\n"), pProcessor->MaxSpeed);
	_tprintf(TEXT("Current Speed: %dMHz\n"), pProcessor->CurrentSpeed);
	return true;
}
Пример #10
0
bool ProcBIOSInfo(void* p)
{
	PBIOSInfo pBIOS = (PBIOSInfo)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(0));
	_tprintf(TEXT("Vendor: %s\n"), LocateString(str, pBIOS->Vendor));
	_tprintf(TEXT("Version: %s\n"), LocateString(str, pBIOS->Version));
	_tprintf(TEXT("BIOS Starting Segment: 0x%X\n"), pBIOS->StartingAddrSeg);
	_tprintf(TEXT("Release Date: %s\n"), LocateString(str, pBIOS->ReleaseDate));
	_tprintf(TEXT("Image Size: %dK\n"), (pBIOS->ROMSize + 1) * 64);
	if (pBIOS->Header.Length > 0x14)
	{   // for spec v2.4 and later
		_tprintf(TEXT("System BIOS version: %d.%d\n"), pBIOS->MajorRelease, pBIOS->MinorRelease);
		_tprintf(TEXT("EC Firmware version: %d.%d\n"), pBIOS->ECFirmwareMajor, pBIOS->ECFirmwareMinor);
	}
	return true;
}
Пример #11
0
bool ProcBoardInfo(void* p)
{
	PBoardInfo pBoard = (PBoardInfo)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(2));
	_tprintf(TEXT("Length: 0x%X\n"), pBoard->Header.Length);
	_tprintf(TEXT("Manufacturer: %s\n"), LocateString(str, pBoard->Manufacturer));
	_tprintf(TEXT("Product Name: %s\n"), LocateString(str, pBoard->Product));
	_tprintf(TEXT("Version: %s\n"), LocateString(str, pBoard->Version));
	_tprintf(TEXT("Serial Number: %s\n"), LocateString(str, pBoard->SN));
	_tprintf(TEXT("Asset Tag Number: %s\n"), LocateString(str, pBoard->AssetTag));
	if (pBoard->Header.Length > 0x08)
	{
		_tprintf(TEXT("Location in Chassis: %s\n"), LocateString(str, pBoard->LocationInChassis));
	}

	return true;
}
Пример #12
0
bool ProcMemoryDevice(void* p)
{
	PMemoryDevice pMD = (PMemoryDevice)p;
	const char *str = toPointString(p);

	_tprintf(TEXT("%s\n"), getHeaderString(17));
	_tprintf(TEXT("Length: 0x%X\n"), pMD->Header.Length);
	_tprintf(TEXT("Total Width: %dbits\n"), pMD->TotalWidth);
	_tprintf(TEXT("Data Width: %dbits\n"), pMD->DataWidth);
	_tprintf(TEXT("Device Locator: %s\n"), LocateString(str, pMD->DeviceLocator));
	_tprintf(TEXT("Bank Locator: %s\n"), LocateString(str, pMD->BankLocator));
	if (pMD->Header.Length > 0x15)
	{
		_tprintf(TEXT("Speed: %d\n"), pMD->Speed);
		_tprintf(TEXT("Manufacturer: %s\n"), LocateString(str,pMD->Manufacturer));
		_tprintf(TEXT("Serial Number: %s\n"), LocateString(str, pMD->SN));
		_tprintf(TEXT("Asset Tag Number: %s\n"), LocateString(str, pMD->AssetTag));
		_tprintf(TEXT("Part Number: %s\n"), LocateString(str, pMD->PN));
	}

	return true;
}
Пример #13
0
string AdcCommand::toString(uint32_t sid /* = 0 */, bool nmdc /* = false */) const {
	return getHeaderString(sid, nmdc) + getParamString(nmdc);
}
Пример #14
0
string AdcCommand::toString(const CID& aCID) const {
	return getHeaderString(aCID) + getParamString(false);
}
Пример #15
0
string AdcCommand::toString() const {
	return getHeaderString() + getParamString(false);
}