gpt4 book ai didi

c++ - CreateEnclave VBS 尝试访问无效地址

转载 作者:行者123 更新时间:2023-11-30 05:00:11 32 4
gpt4 key购买 nike

我正在尝试使用去年推出的 Hyper-V 基于虚拟化的安全性创建一个简单的 Enclave,但是,我发现 MSDN 上缺少文档。因此,我无法正确诊断我遇到的问题。

这里的代码对我来说是失败的 enclave == null 给我 Attempt to access invalid address. 而且我不太确定它无法访问什么.

if (IsEnclaveTypeSupported(ENCLAVE_TYPE_VBS))
{
DWORD lpError = 0;
ENCLAVE_CREATE_INFO_VBS vci = { 0 };
vci.Flags = 1;

PVOID enclave = CreateEnclave(GetCurrentProcess(),
NULL,
4096 * 2,
NULL,
ENCLAVE_TYPE_VBS,
&vci,
sizeof(ENCLAVE_CREATE_INFO_VBS),
&lpError);

if (enclave != NULL)
{
printf("Enclave created\n");
}
else
{
printf(GetLastErrorAsString().c_str());
}
}
else {
printf("VBS not supported\n");
}

最佳答案

好的,我已经解决了,似乎 dwSize 有一个最小大小,而且它只适用于偶数 Mb。

例如 1Mb、3Mb、5Mb 等不起作用,返回“尝试访问无效地址”。而 2Mb、4Mb、6Mb 等按预期工作。

关于c++ - CreateEnclave VBS 尝试访问无效地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50899790/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com