Функция CallEnclave (enclaveapi.h)

Вызывает функцию в анклавах. CallEnclave также можно вызвать в анклава, чтобы вызвать функцию за пределами анклава.

Синтаксис

BOOL CallEnclave(
  [in]  LPENCLAVE_ROUTINE lpRoutine,
  [in]  LPVOID            lpParameter,
  [in]  BOOL              fWaitForThread,
  [out] LPVOID            *lpReturnValue
);

Параметры

[in] lpRoutine

Адрес функции, которую требуется вызвать.

[in] lpParameter

Параметр, который требуется передать функции.

[in] fWaitForThread

TRUE Если вызов указанной функции должен блокировать выполнение до тех пор, пока неактивный поток анклава не станет доступным, если поток бездействия анклава недоступен. FALSE Если вызов указанной функции должен завершиться ошибкой, если поток анклава простоя недоступен.

Этот параметр игнорируется при использовании CallEnclave в анклавах для вызова функции, которая не находится в анклаве.

[out] lpReturnValue

Возвращаемое значение функции, если она вызывается успешно.

Возвращаемое значение

TRUE Значение , если указанная функция была успешно вызвана; в противном случае FALSE. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 10 версии 1709 [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2016 [только классические приложения]
целевая платформа Виндоус
Header анклавапи.h
Library Kernel32.lib
DLL Api-ms-win-core-enclave-l1-1-0.dll; Kernel32.dll; KernelBase.dll

См. также

Анклав-функции

ЗавершениеEnclave

API Vertdll, доступные в анклавах VBS