⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jacke.c

📁 在efi下读取datahub的一个小程序
💻 C
字号:
#include"Efi.h"
#include"EfiDriverLib.h"
#include EFI_PROTOCOL_DEPENDENCY (DataHub)

EFI_DRIVER_ENTRY_POINT (JackeEntryPoint)
EFI_STATUS
JackeEntryPoint(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{ 
	EFI_STATUS Status;
EFI_DATA_HUB_PROTOCOL *DataHub;
JACKE_TEST   testStruct;

  testStruct.Header.Version = 0x1234
  testStruct.Header.HeaderSize = sizeof (EFI_SUBCLASS_TYPE1_HEADER);
  testStruct.Header.Instance = 1;
  testStruct.Header.SubInstance = EFI_SUBCLASS_INSTANCE_NON_APPLICABLE;
  testStruct.Header.RecordType = 4;
  
  testStruct.Record.Name=L"Jacke";
  testStruct.Record.Age =25;
   
EFI_GUID gJackeDataRecordGuid=EFI_JACKE_TEST_GUID ;
EFI_GUID gJackeProducerName=EFI_JACKE_TEST_GUID;
EfiInitializeDriverLib(ImageHandle,SystemTable);
 Status = gBS->LocateProtocol (&gEfiDataHubProtocolGuid, NULL, &DataHub);
  ASSERT_EFI_ERROR(Status);
    Status = DataHub->LogData (
             DataHub,
             &gJackeDataRecordGuid,
             &gJackeProducerName,
             EFI_DATA_RECORD_CLASS_DATA,
             &testStruct,
             sizeof (EFI_SUBCLASS_TYPE1_HEADER) + 
             sizeof (EFI_JACKE)
             );
  ASSERT_EFI_ERROR(Status);
  return EFI_SUCCESS;
}
  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -