更新EFI分区表缓存

时间:2019-06-27 11:01:41

标签: uefi

作为自动化软件部署的一部分,我正在从EFI应用程序写入硬盘映像。完成此操作后,缓存的分区表不再是最新的,因此我需要强制重新加载。

我还没有找到可以显式刷新分区表缓存或模拟媒体更改的API(无论如何都可能违反...->MediaInfo->Removable == FALSE的期望)。

我需要重新启动,还是忽略了某些内容?

1 个答案:

答案 0 :(得分:1)

我找到了。仅当持有设备的BLOCK_IO_PROTOCOL的排他性句柄时,才可以更改分区表。

以独占模式打开句柄将分离任何其他驱动程序,包括分区的块IO协议和分区表缓存。关闭独占句柄后,将重新读取分区表。

相关问题