次の方法で共有


SCardGetReaderIconW 関数 (winscard.h)

SCardGetReaderIcon 関数は、特定のリーダー名のスマート カード リーダーのアイコンを取得します。 この関数は、カード リーダーの状態には影響しません。

構文

LONG SCardGetReaderIconW(
  [in]      SCARDCONTEXT hContext,
  [in]      LPCWSTR      szReaderName,
  [out]     LPBYTE       pbIcon,
  [in, out] LPDWORD      pcbIcon
);

パラメーター

[in] hContext

クエリのリソース マネージャー コンテキストを識別するハンドル。 SCardEstablishContext 関数を前回呼び出すことで、リソース マネージャー コンテキストを設定できます。 このパラメーターは NULLできません。

[in] szReaderName

閲覧者名。 この値を取得するには、SCardListReaders 関数を呼び出します。

[out] pbIcon

アイコン ファイルから読み取られたスマート カード リーダー アイコンの BLOB を含むバッファーへのポインター。 この値が NULL場合、この関数は、pcbIcon パラメーターで指定されたバッファー長を無視し、このパラメーターが NULL でなかった場合に pcbIcon に返されたバッファーの長さを書き込み、成功コードを返します。

[in, out] pcbIcon

pbIcon バッファーの長さ (文字数)。 このパラメーターは、受信した属性の実際の長さを受け取ります。 バッファーの長さがSCARD_AUTOALLOCATEとして指定されている場合、pbIcon ポインターからバイト ポインターに変換され、属性を含むメモリ ブロックのアドレスを受け取ります。 このメモリ ブロックは、SCardFreeMemory 関数で割り当てを解除する必要があります。

戻り値

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

リターン コード 形容
成功 の
SCARD_S_SUCCESS。
エラーの
エラー コード。 詳細については、「スマート カードの戻り値 を参照してください。

備考

アイコンは、アルファ チャネルのない 256 ピクセル× 256 ピクセルである必要があります。

PBYTE    pbIcon = NULL;
DWORD    cbIcon = SCARD_AUTOALLOCATE;
DWORD    i;
LONG     lReturn;
LPTSTR   szReaderName = "USB Smart Card Reader 0";

// Retrieve the reader's icon.
// hContext was set by a previous call to SCardEstablishContext.
lReturn = SCardGetReaderIcon(hContext,
                         szReaderName,
                         (PBYTE)&pbIcon,
                         &cbIcon);

if ( SCARD_S_SUCCESS != lReturn )
{
    printf("Failed SCardGetReaderIcon - %x\n", lReturn);
    // Take appropriate action.
}
else
{
    // Free the memory when done. 
    lReturn = SCardFreeMemory(hContext, pbIcon);
}

手記

winscard.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SCardGetReaderIcon を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 8 [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2012 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winscard.h