diff options
Diffstat (limited to 'Lesson_6/UefiLessonsPkg/ImageInfo/ImageInfo.c')
| -rw-r--r-- | Lesson_6/UefiLessonsPkg/ImageInfo/ImageInfo.c | 29 | 
1 files changed, 29 insertions, 0 deletions
diff --git a/Lesson_6/UefiLessonsPkg/ImageInfo/ImageInfo.c b/Lesson_6/UefiLessonsPkg/ImageInfo/ImageInfo.c new file mode 100644 index 0000000..f88b36b --- /dev/null +++ b/Lesson_6/UefiLessonsPkg/ImageInfo/ImageInfo.c @@ -0,0 +1,29 @@ +#include <Library/UefiBootServicesTableLib.h> +#include <Library/UefiLib.h> + + +typedef struct { +  UINTN               Signature; +  /// All handles list of IHANDLE +  LIST_ENTRY          AllHandles; +  /// List of PROTOCOL_INTERFACE's for this handle +  LIST_ENTRY          Protocols; +  UINTN               LocateRequest; +  /// The Handle Database Key value when this handle was last created or modified +  UINT64              Key; +} IHANDLE; + +EFIAPI +UefiMain ( +  IN EFI_HANDLE        ImageHandle, +  IN EFI_SYSTEM_TABLE  *SystemTable +  ) +{ +  IHANDLE* MyHandle = ImageHandle; +  Print(L"Signature: %c %c %c %c\n", (MyHandle->Signature >>  0) & 0xff, +                                     (MyHandle->Signature >>  8) & 0xff, +                                     (MyHandle->Signature >> 16) & 0xff, +                                     (MyHandle->Signature >> 24) & 0xff); + +  return EFI_SUCCESS; +}  | 
