SCardSetCardTypeProviderNameW 関数 (winscard.h)

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

構文

LONG SCardSetCardTypeProviderNameW(
  [in] SCARDCONTEXT hContext,
  [in] LPCWSTR      szCardName,
  [in] DWORD        dwProviderId,
  [in] LPCWSTR      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 を表すプロバイダー名を含む文字列。

戻り値

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

リターン コード 説明
Success
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 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー winscard.h
Library Winscard.lib
[DLL] Winscard.dll

こちらもご覧ください

SCardGetCardTypeProviderName