本篇程序参考自博客“UEFI应用与编程–SmBios”https://blog.csdn.net/qyqcs/article/details/79566235
在原博主的基础上进行了一些修改,修改了几处个人觉得有问题的地方。
SmBiosList.c
#include <Uefi.h>
#include <Library/UefiLib.h>
#include <IndustryStandard/SmBios.h>
#include <Library/UefiShellDebug1CommandsLib.h>
#include <Library/LibSmbiosView.h>
EFI_STATUS EFIAPI UefiMain(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
{
EFI_STATUS Status;
SMBIOS_TABLE_ENTRY_POINT *mSmbiosTable = NULL;
SMBIOS_STRUCTURE_POINTER m_SmbiosStruct;
SMBIOS_STRUCTURE_POINTER *mSmbiosStruct = &m_SmbiosStruct;
SMBIOS_STRUCTURE_POINTER Smbios;
SMBIOS_STRUCTURE_POINTER SmbiosEnd;
UINT8 *Raw;
UINT16 Handle1 = 0;
UINT8 *Buffer1;
UINT16 Length1;
UINT16