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


Метод ITpmVirtualSmartCardManager::CreateVirtualSmartCard (tpmvscmgr.h)

Создает виртуальный интеллектуальный карта доверенного платформенного модуля с заданными параметрами.

Синтаксис

HRESULT CreateVirtualSmartCard(
  [in]           LPCWSTR                                   pszFriendlyName,
  [in]           BYTE                                      bAdminAlgId,
  [in]           const BYTE                                *pbAdminKey,
  [in]           DWORD                                     cbAdminKey,
  [in, optional] const BYTE                                *pbAdminKcv,
  [in]           DWORD                                     cbAdminKcv,
  [in, optional] const BYTE                                *pbPuk,
  [in]           DWORD                                     cbPuk,
  [in]           const BYTE                                *pbPin,
  [in]           DWORD                                     cbPin,
  [in]           BOOL                                      fGenerate,
  [in, optional] ITpmVirtualSmartCardManagerStatusCallback *pStatusCallback,
  [out]          LPWSTR                                    *ppszInstanceId,
  [out]          BOOL                                      *pfNeedReboot
);

Параметры

[in] pszFriendlyName

Отображаемое имя узла чтения смарт-карта. Это показано в диспетчер устройств, но это не имя средства чтения, как видно диспетчеру ресурсов интеллектуального карта (SCRM).

[in] bAdminAlgId

Идентификатор алгоритма ключа администратора. В настоящее время для работы с мини-накопителем GIDS для папки "Входящие" это значение должно быть VSC_DEFAULT_ADMIN_ALGORITHM_ID (3-клавишный тройной DES с методом заполнения ISO/IEC 9797 2 в режиме цепочки CBC).

[in] pbAdminKey

Указатель на массив байтов, содержащий ключ администратора виртуальной интеллектуальной карта, которую необходимо создать.

[in] cbAdminKey

Размер (в байтах) массива байтов, на который указывает параметр pbAdminKey .

[in, optional] pbAdminKcv

Указатель на массив байтов, содержащий ключ проверка значение ключа администратора. Значение проверка ключа определяется как первые 3 байта выходного БОЛЬШОго двоичного объекта при использовании ключа администратора для шифрования блока нулей. Если значение проверка ключа не указано, проверка целостности ключа администратора не будет.

[in] cbAdminKcv

Размер массива байтов в байтах, на который указывает параметр pbAdminKcv .

[in, optional] pbPuk

Указатель на массив байтов, содержащий значение ключа разблокировки ПИН-кода (PUK) виртуальной интеллектуальной карта. Обычно это последовательность символов ASCII с минимальной длиной 8 символов. Если PUK не указан, виртуальный интеллектуальный карта будет создан без роли PUK и будет использовать сброс ПИН-кода на основе запроса или ответа с помощью роли администратора.

[in] cbPuk

Размер массива байтов в байтах, на который указывает параметр pbPuk .

[in] pbPin

Указатель на массив байтов, содержащий ЗНАЧЕНИЕ ПИН-кода виртуального интеллектуального карта. Обычно это последовательность символов ASCII длиной не менее 8 символов и максимальной длиной 127 символов.

[in] cbPin

Размер массива байтов в байтах, на который указывает параметр pbPin .

[in] fGenerate

Указывает, требуется ли подготовка виртуальной интеллектуальной карта со всеми необходимыми файлами, необходимыми для базового CSP и интеллектуального карта KSP.

[in, optional] pStatusCallback

Указатель на интерфейс ITpmVirtualSmartCardManagerStatusCallback . Диспетчер виртуальных смарт-карта TPM использует этот интерфейс обратного вызова для передачи хода выполнения или ошибки во время создания виртуальных смарт-карта. Если параметр pStatusCallback имеет значение NULL, клиент не сообщает о ходе выполнения операции.

[out] ppszInstanceId

Указатель на указатель на буфер Юникода для получения идентификатора экземпляра созданного виртуального интеллектуального карта.

[out] pfNeedReboot

Указатель на логическое значение, чтобы получить, требуется ли запрошенной операции перезагрузка компьютера.

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

Если метод завершается успешно, он возвращает S_OK.

Если метод завершается сбоем, он возвращает код ошибки Win32.

Комментарии

После успешного выполнения метода параметр ppszInstanceId указывает на буфер Юникода, содержащий идентификатор экземпляра созданного виртуального модуля чтения смарт-карта TPM. Завершив использование буфера, вызывающий объект должен освободить буфер на клиенте, вызвав функцию CoTaskMemFree , как указано в правилах управления памятью COM.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Целевая платформа Windows
Header tpmvscmgr.h
Библиотека Vscmgr.lib

См. также раздел

ITpmVirtualSmartCardManager