Tbsip_Submit_Command関数 (tbs.h)

トラステッド プラットフォーム モジュール (TPM) コマンドを TPM Base Services (TBS) に送信して処理します。

構文

TBS_RESULT Tbsip_Submit_Command(
  [in]      TBS_HCONTEXT         hContext,
  [in]      TBS_COMMAND_LOCALITY Locality,
  [in]      TBS_COMMAND_PRIORITY Priority,
  [in]      PCBYTE               pabCommand,
  [in]      UINT32               cbCommand,
  [out]     PBYTE                pabResult,
  [in, out] PUINT32              pcbResult
);

パラメーター

[in] hContext

コマンドを送信するコンテキストのハンドル。

[in] Locality

TPM コマンドの局所性を設定するために使用されます。 これは、次のいずれかの値である必要があります。

意味
TBS_COMMAND_LOCALITY_ZERO
0 (0x0)
局所性 0。 これは、現在サポートされている唯一のローカリティです。
TBS_COMMAND_LOCALITY_ONE
1 (0x1)
ロケール 1。
TBS_COMMAND_LOCALITY_TWO
2 (0x2)
ロケール 2。
TBS_COMMAND_LOCALITY_THREE
3 (0x3)
ロケール 3。
TBS_COMMAND_LOCALITY_FOUR
4 (0x4)
ロケール 4。

[in] Priority

コマンドに必要な優先度レベル。 このパラメーターには、次の値のいずれかを指定できます。

意味
TBS_COMMAND_PRIORITY_LOW
100 (0x64)
優先度の低いアプリケーションの使用に使用されます。
TBS_COMMAND_PRIORITY_NORMAL
200 (0xC8)
通常の優先度のアプリケーション使用に使用されます。
TBS_COMMAND_PRIORITY_SYSTEM
400 (0x190)
TPM にアクセスするシステム タスクに使用されます。
TBS_COMMAND_PRIORITY_HIGH
300 (0x12C)
優先度の高いアプリケーションの使用に使用されます。
TBS_COMMAND_PRIORITY_MAX
2147483648 (0x80000000)
電源管理システムから発生するタスクに使用されます。

[in] pabCommand

処理する TPM コマンドを含むバッファーへのポインター。

[in] cbCommand

コマンドの長さ (バイト単位)。

[out] pabResult

TPM コマンドの結果を受け取るバッファーへのポインター。 このバッファーは 、pabCommand と同じにすることができます。

[in, out] pcbResult

入力時に、結果バッファーのサイズをバイト単位で指定する整数。 この値は、submit コマンドが戻るときに設定されます。 指定されたバッファーが小さすぎる場合、出力時のこのパラメーターは、結果に必要なサイズ (バイト単位) に設定されます。

戻り値

関数が成功した場合、関数はTBS_SUCCESSを返します。

コマンドは正常に送信できますが、TPM では失敗します。 この場合、エラー コードは結果バッファーの標準 TPM エラーとして返されます。

関数が失敗すると、エラーを示す TBS リターン コードが返されます。

リターン コード/値 Description
TBS_SUCCESS
0 (0x0)
関数は成功しました。
TBS_E_BAD_PARAMETER
2150121474 (0x80284002)
1 つ以上のパラメーター値が無効です。
TBS_E_BUFFER_TOO_LARGE
2150121486 (0x8028400E)
入力バッファーまたは出力バッファーが大きすぎます。
TBS_E_INTERNAL_ERROR
2150121473 (0x80284001)
内部ソフトウェア エラーが発生しました。
TBS_E_INSUFFICIENT_BUFFER
2150121477 (0x80284005)
指定された出力バッファーが小さすぎます。
TBS_E_INVALID_CONTEXT
2150121476 (0x80284004)
指定されたコンテキスト ハンドルは、有効なコンテキストを参照しません。
TBS_E_INVALID_OUTPUT_POINTER
2150121475 (0x80284003)
指定された出力ポインターが無効です。
TBS_E_IOERROR
2150121478 (0x80284006)
TPM との通信中にエラーが発生しました。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー tbs.h
Library Tbs.lib
[DLL] Tbs.dll