Поделиться через


функция Tbsi_Context_Create (tbs.h)

Создает дескриптор контекста, который можно использовать для передачи команд в TBS.

Синтаксис

TBS_RESULT Tbsi_Context_Create(
  [in]  PCTBS_CONTEXT_PARAMS pContextParams,
  [out] PTBS_HCONTEXT        phContext
);

Параметры

[in] pContextParams

Параметр для структуры TBS_CONTEXT_PARAMS , содержащей параметры, связанные с контекстом.

[out] phContext

Указатель на расположение для хранения нового дескриптора контекста.

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

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

Если функция завершается сбоем, она возвращает код возврата TBS, указывающий на ошибку.

Возвращаемый код или значение Описание
TBS_SUCCESS
0 (0x0)
Функция выполнена успешно.
TBS_E_BAD_PARAMETER
2150121474 (0x80284002)
Одно или несколько значений параметров недопустимы.
TBS_E_INTERNAL_ERROR
2150121473 (0x80284001)
Внутренняя программная ошибка.
TBS_E_INVALID_CONTEXT_PARAM
2150121479 (0x80284007)
Недопустимый параметр контекста был передан при попытке создать контекст TBS.
TBS_E_INVALID_OUTPUT_POINTER
2150121475 (0x80284003)
Указанный выходной указатель недопустим.
TBS_E_SERVICE_DISABLED
2150121488 (0x80284010)
Служба TBS отключена.
TBS_E_SERVICE_NOT_RUNNING
2150121480 (0x80284008)
Служба TBS не запущена и не может быть запущена.
TBS_E_SERVICE_START_PENDING
2150121483 (0x8028400B)
Служба TBS запущена, но еще не запущена.
TBS_E_TOO_MANY_TBS_CONTEXTS
2150121481 (0x80284009)
Не удалось создать новый контекст, так как существует слишком много открытых контекстов.
TBS_E_TPM_NOT_FOUND
2150121487 (0x8028400F)
На этом компьютере не удается найти совместимое устройство безопасности доверенного платформенного модуля (TPM).

Комментарии

Можно указать структуру TBS_CONTEXT_PARAMS с полем версии TPM_VERSION_12. Приложения, взаимодействующие с TPM версии 2.0, передают указатель на структуру TBS_CONTEXT_PARAMS2 , а для поля версии задано значение TPM_VERSION_20. Задайте для зарезервированного поля значение 0, а для поля includeTPm20 — значение 1. Если приложение также готово к взаимодействию с TPM версии 1.2 (если в системе нет TPM версии 2.0), задайте для поля includeTpm12 значение 1.

Если TPM в системе отсутствует или версия доверенного платформенного модуля не соответствует версии, запрошенной вызывающей стороной, Tbsi_Context_Create вернет код ошибки TBS_E_TPM_NOT_FOUND (0x8028400). Приложения должны проверка для обеих версий и иметь возможность взаимодействовать с одним из доверенных платформенного модуля.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header tbs.h
Библиотека Tbs.lib
DLL Tbs.dll