方法一 调用EFI_HII_DATABASE_PROTOCOL提供的NewPackageList()进行绑定
- 在模块的inf文件中需要定义UEFI_HII_RESOURCE_SECTION = TRUE
- 该方法不能满足模块中提供多个form的功能
方法二 调用HiiLib中的HiiAddPackages接口进行绑定
- inf文件中不需要定义UEFI_HII_RESOURCE_SECTION = TRUE
- 在源文件中需要声明extern UINT8 ModuleStrings[] 和 extern UINT8 VfrBin[]。在编译时由VfrCompile会将.uni和.vfr文件编译成UINT8 ModuleStrings[] 和 UINT8 VfrBin[]两个二进制文件数组。
- 该方法可以实现一个模块提供多个form的功能
- 要注意的是vfr文件的名称不能和源文件名称相同,否则编译可能会报错。因为vfr文件在编译时会被编译成vfrname.c如果vfr文件和源文件中某一.文件重名,会导致编译出错。