SCardSetAttrib 関数 (winscard.h)

SCardSetAttrib 関数は、指定されたハンドルに対して指定されたリーダー属性を設定します。 リーダーリーダー ドライバー、スマート カード状態には影響しません。 多くの属性がトランスポート プロトコルの直接制御下にあるため、すべての属性がすべてのリーダーでサポートされているわけではありません (また、常に設定することもできません)。

構文

LONG SCardSetAttrib(
  [in] SCARDHANDLE hCard,
  [in] DWORD       dwAttrId,
  [in] LPCBYTE     pbAttr,
  [in] DWORD       cbAttrLen
);

パラメーター

[in] hCard

SCardConnect から返される参照値。

[in] dwAttrId

設定する属性の識別子。 値は書き込み専用です。 ベンダーはすべての属性をサポートしていない場合があることに注意してください。

意味
SCARD_ATTR_SUPRESS_T1_IFS_REQUEST
リーダーからカードへの T=1 IFSD パケットの送信を抑制します。 (現在挿入されているカードが IFSD 要求をサポートしていない場合に使用できます。

[in] pbAttr

dwAttrId で ID が指定された属性を提供するバッファーへのポインター。

[in] cbAttrLen

pbAttr バッファー内の属性値の長さ (バイト単位)。

戻り値

この関数は、成功するか失敗するかによって異なる値を返します。

リターン コード 説明
Success
SCARD_S_SUCCESS。
障害
エラー コード。 詳細については、「 スマート カードの戻り値」を参照してください。

注釈

SCardSetAttrib 関数は、直接カードアクセス関数です。 その他の直接アクセス機能の詳細については、「 ダイレクト カード アクセス関数」を参照してください。

次の例は、属性を設定する方法を示しています。

// Set the attribute.
// hCardHandle was set by a previous call to SCardConnect.
// dwAttrID is a DWORD value, specifying the attribute ID.
// pbAttr points to the buffer of the new value.
// cByte is the count of bytes in the buffer.
lReturn = SCardSetAttrib(hCardHandle,
                         dwAttrID,
                         (LPBYTE)pbAttr,
                         cByte);
if ( SCARD_S_SUCCESS != lReturn )
    printf("Failed SCardSetAttrib\n");

要件

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

こちらもご覧ください

SCardConnect

SCardGetAttrib