调用 enclave 中的函数。 还可以在 enclave 中调用 CallEnclave,以调用 enclave 外部的函数。
Syntax
BOOL CallEnclave(
[in] LPENCLAVE_ROUTINE lpRoutine,
[in] LPVOID lpParameter,
[in] BOOL fWaitForThread,
[out] LPVOID *lpReturnValue
);
参数
[in] lpRoutine
要调用的函数的地址。
[in] lpParameter
要传递给函数的参数。
[in] fWaitForThread
TRUE 如果对指定函数的调用应阻止执行,则在没有空闲 enclave 线程可用时,空闲 enclave 线程变为可用。
FALSE 如果在没有空闲 enclave 线程可用时,对指定函数的调用应失败。
在 enclave 中使用 CallEnclave 调用不在 enclave 中的函数时,将忽略此参数。
[out] lpReturnValue
函数的返回值(如果成功调用)。
返回值
TRUE 如果已成功调用指定的函数,则为 ;否则 FALSE。 若要获取扩展的错误信息,请调用 GetLastError。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows 10 版本 1709 [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2016 [仅限桌面应用] |
| 目标平台 | Windows操作系统 |
| Header | enclaveapi.h |
| Library | Kernel32.lib |
| DLL | Api-ms-win-core-enclave-l1-1-0.dll;Kernel32.dll;KernelBase.dll |