ITpmVirtualSmartCardManager::CreateVirtualSmartCard-Methode (tpmvscmgr.h)

Erstellt ein virtuelles TPM-Karte mit den angegebenen Parametern.

Syntax

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
);

Parameter

[in] pszFriendlyName

Anzeigename des Smart Karte-Leserknotens. Dies wird im Geräte-Manager angezeigt, ist aber nicht der Lesername, wie er vom Smart Karte Resource Manager (SCRM) gesehen wird.

[in] bAdminAlgId

Algorithmusbezeichner des Administratorschlüssels. Derzeit sollte dieser Wert für die Verwendung mit dem GIDS-Minidriver im Posteingang VSC_DEFAULT_ADMIN_ALGORITHM_ID werden (3-Tasten-Dreifach-DES mit ISO/IEC 9797-Auffüllmethode 2 im CBC-Verkettungsmodus).

[in] pbAdminKey

Zeiger auf ein Bytearray, das den Administratorschlüssel des zu erstellenden virtuellen intelligenten Karte enthält.

[in] cbAdminKey

Größe des Bytearrays in Bytes, auf das vom pbAdminKey-Parameter verwiesen wird.

[in, optional] pbAdminKcv

Zeiger auf ein Bytearray, das den Schlüsselüberprüfungswert des Administratorschlüssels enthält. Der Schlüsselüberprüfungswert wird als die ersten 3 Bytes des Ausgabeblobs definiert, wenn der Administratorschlüssel zum Verschlüsseln eines Blocks mit Nullen verwendet wird. Wenn der Schlüsselüberprüfungswert nicht angegeben wird, wird keine Integritätsprüfung für den Administratorschlüssel ausgeführt.

[in] cbAdminKcv

Größe des Bytearrays in Bytes, auf das der Parameter pbAdminKcv verweist.

[in, optional] pbPuk

Zeiger auf ein Bytearray, das den PUK-Wert (PIN Unlock Key) des virtuellen intelligenten Karte enthält. Es handelt sich in der Regel um eine Sequenz von ASCII-Zeichen mit einer Mindestlänge von 8 Zeichen. Wenn das PUK nicht bereitgestellt wird, wird die virtuelle intelligente Karte ohne PUK-Rolle erstellt und verwendet stattdessen die herausforderungs-/antwortbasierte PIN-Zurücksetzung über die Administratorrolle.

[in] cbPuk

Größe des Bytearrays in Bytes, auf das der pbPuk-Parameter verweist.

[in] pbPin

Zeiger auf ein Bytearray, das den PIN-Wert des virtuellen intelligenten Karte enthält. Es handelt sich in der Regel um eine Sequenz von ASCII-Zeichen mit einer Länge von mindestens 8 Zeichen und maximal 127 Zeichen.

[in] cbPin

Größe des Bytearrays in Bytes, auf das der pbPin-Parameter verweist.

[in] fGenerate

Gibt an, ob die virtuelle intelligente Karte mit allen erforderlichen Dateien bereitgestellt werden muss, die für den Basis-CSP und den intelligenten Karte KSP erforderlich sind.

[in, optional] pStatusCallback

Zeiger auf eine ITpmVirtualSmartCardManagerStatusCallback-Schnittstelle . Der TPM-Manager für virtuelle intelligente Karte verwendet diese Rückrufschnittstelle, um den Fortschritt oder Fehler während der Erstellung virtueller intelligenter Karte zu kommunizieren. Wenn der pStatusCallback-ParameterNULL ist, wird dem Client vor Abschluss des Vorgangs kein Fortschritt gemeldet.

[out] ppszInstanceId

Zeiger auf einen Zeiger auf einen Unicode-Puffer, um die instance-ID des erstellten virtuellen intelligenten Karte zu empfangen.

[out] pfNeedReboot

Zeigen Sie auf einen booleschen Wert, um zu erhalten, ob der angeforderte Vorgang den Computer neu starten muss.

Rückgabewert

Wenn die Methode erfolgreich ist, gibt sie S_OK zurück.

Wenn die Methode fehlschlägt, gibt sie einen Win32-Fehlercode zurück.

Hinweise

Wenn die Methode erfolgreich ist, zeigt der ppszInstanceId-Parameter auf den Unicode-Puffer, der den instance Bezeichner des neu erstellten tpm virtual smart Karte-Reader enthält. Wenn Sie den Puffer verwendet haben, muss der Aufrufer den Puffer auf dem Client freigeben, indem er die CoTaskMemFree-Funktion aufruft, wie in den COM-Speicherverwaltungsregeln angegeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile tpmvscmgr.h
Bibliothek Vscmgr.lib

Weitere Informationen

ITpmVirtualSmartCardManager