次の方法で共有


SCardSetCardTypeProviderNameA 関数 (winscard.h)

SCardSetCardTypeProviderName 関数は、特定のカード名と プロバイダーの種類プロバイダーを含むモジュールの名前 (ダイナミック リンク ライブラリ) を指定します。

構文

LONG SCardSetCardTypeProviderNameA(
  [in] SCARDCONTEXT hContext,
  [in] LPCSTR       szCardName,
  [in] DWORD        dwProviderId,
  [in] LPCSTR       szProvider
);

パラメーター

[in] hContext

リソース マネージャー コンテキストを識別するハンドル。 リソース マネージャー コンテキストは、SCardEstablishContextを する前の呼び出しによって設定できます。 SCardSetCardTypeProviderName の呼び出しが特定の コンテキストに送信されない場合、この値は NULL できます。

[in] szCardName

この プロバイダー名 が関連付けられているカードの種類の名前。

[in] dwProviderId

このカードの種類に関連付けられているプロバイダーの識別子。

価値 意味
SCARD_PROVIDER_PRIMARY
1
この関数は、スマート カードのプライマリ サービス プロバイダー の名前を GUID 文字列として取得します。
SCARD_PROVIDER_CSP
2
この関数は、暗号化サービス プロバイダー (CSP) の名前を取得します。
SCARD_PROVIDER_KSP
3
この関数は、キー ストレージ プロバイダー (KSP) スマート カードの名前を取得します。
SCARD_PROVIDER_CARD_MODULE
0x80000001
この関数は、カード モジュールの名前を取得します。

[in] szProvider

CSP を表すプロバイダー名を含む文字列。

戻り値

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

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

備考

この関数はリダイレクトされませんが、リモート デスクトップ セッション内で関数を呼び出してもエラーは発生しません。 これは、結果がローカル コンピューターではなくリモート コンピューターからの結果であることを意味するだけです。

この関数はプロバイダー名を設定しますが、SCardGetCardTypeProviderName を使用してプロバイダー名を取得できます。

次の例は、カードの種類のプロバイダー名を指定する方法を示しています。

LPTSTR            szNewProvName = _T("My Provider Name");
LPTSTR            szCardName = _T("WindowsCard");
LONG              lReturn = SCARD_S_SUCCESS;

// Set the card type provider name.
// hContext was set by SCardEstablishContext.
lReturn = SCardSetCardTypeProviderName(hContext,
                                      szCardName,
                                      SCARD_PROVIDER_CSP,
                                      szNewProvName);
if ( SCARD_S_SUCCESS != lReturn )
{
    printf("Failed SCardSetCardTypeProviderName - %x\n", lReturn);
    exit(1);
}

手記

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

必要条件

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

関連項目

SCardGetCardTypeProviderName