SCardReconnect 函式 (winscard.h)
SCardReconnect 函式會重新建立呼叫應用程式與智慧卡之間的現有連線。 此函式會將卡片句柄從直接存取移至一般存取,或確認並清除錯誤狀況,以防止進一步存取卡片。
語法
LONG SCardReconnect(
[in] SCARDHANDLE hCard,
[in] DWORD dwShareMode,
[in] DWORD dwPreferredProtocols,
[in] DWORD dwInitialization,
[out, optional] LPDWORD pdwActiveProtocol
);
參數
[in] hCard
從先前呼叫 SCardConnect 取得的參考值。
[in] dwShareMode
旗標,指出其他應用程式是否可以形成此卡片的連線。
值 | 意義 |
---|---|
|
此應用程式會與其他應用程式共用此卡片。 |
|
此應用程式不會與其他應用程式共用此卡片。 |
[in] dwPreferredProtocols
此連線可接受的通訊協定位掩碼。 可能的值可以與 OR 作業結合。
此參數的值應該包含目前的通訊協定。 嘗試重新連線至目前通訊協定以外的通訊協定會導致錯誤。
值 | 意義 |
---|---|
|
T=0 是可接受的通訊協定。 |
|
T=1 是可接受的通訊協定。 |
[in] dwInitialization
應該在卡片上執行的初始化類型。
值 | 意義 |
---|---|
|
重新連線時不要執行任何特殊動作。 |
|
重設卡片 (暖重設) 。 |
|
關閉卡片電源,並將其重設 (冷重設) 。 |
[out, optional] pdwActiveProtocol
指出已建立作用中通訊協定的旗標。
值 | 意義 |
---|---|
|
T=0 是使用中的通訊協定。 |
|
T=1 是使用中的通訊協定。 |
傳回值
此函式會根據它是否成功或失敗,傳回不同的值。
傳回碼 | Description |
---|---|
|
SCARD_S_SUCCESS。 |
|
錯誤碼。 如需詳細資訊,請參閱 智慧卡傳回值。 |
備註
SCardReconnect 是 智慧卡 和 讀取器 存取函式。 如需其他存取函式的詳細資訊,請參閱 智慧卡和讀取器存取函式。
範例
下列範例顯示重新建立連線。
DWORD dwAP;
LONG lReturn;
// Reconnect.
// hCardHandle was set by a previous call to SCardConnect.
lReturn = SCardReconnect(hCardHandle,
SCARD_SHARE_SHARED,
SCARD_PROTOCOL_T0 | SCARD_PROTOCOL_T1,
SCARD_LEAVE_CARD,
&dwAP );
if ( SCARD_S_SUCCESS != lReturn )
printf("Failed SCardReconnect\n");
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winscard.h |
程式庫 | Winscard.lib |
Dll | Winscard.dll |