SCardEndTransaction 함수(winscard.h)
SCardEndTransaction 함수는 이전에 선언된 트랜잭션을 완료하여 다른 애플리케이션이 카드 상호 작용을 다시 시작할 수 있도록 합니다.
구문
LONG SCardEndTransaction(
[in] SCARDHANDLE hCard,
[in] DWORD dwDisposition
);
매개 변수
[in] hCard
SCardConnect에 대한 이전 호출에서 가져온 참조 값입니다. 이 값은 SCardBeginTransaction에 대한 이전 호출에서도 사용되었을 것입니다.
[in] dwDisposition
연결된 판독기에서 카드 닫을 때 수행할 작업입니다.
값 | 의미 |
---|---|
|
카드 배출합니다. |
|
특별한 일을 하지 마십시오. |
|
카드 다시 설정합니다. |
|
카드 전원을 니다. |
반환 값
함수가 성공하면 함수는 SCARD_S_SUCCESS 반환합니다.
함수가 실패하면 오류 코드를 반환합니다. 자세한 내용은 스마트 카드 반환 값을 참조하세요. 가능한 오류 코드는 다음과 같습니다.
반환 코드/값 | 설명 |
---|---|
|
트랜잭션이 해제되었습니다. 나중에 카드 통신하려면 SCardReconnect 함수를 호출해야 합니다.
Windows Server 2008, Windows Vista, Windows Server 2003 및 Windows XP: 트랜잭션이 해제되지 않았습니다. 애플리케이션은 다른 스레드 및 프로세스가 스마트 카드 통신하지 못하도록 기존 트랜잭션을 차단하지 않도록 SCardDisconnect, SCardReconnect 또는 SCardReleaseContext 함수를 즉시 호출해야 합니다. |
설명
SCardEndTransaction 함수는 스마트 카드 및 판독기 액세스 함수입니다. 다른 액세스 함수에 대한 자세한 내용은 스마트 카드 및 읽기 권한자 액세스 함수를 참조하세요.
예제
다음 예제에서는 스마트 카드 트랜잭션을 종료합니다. 이 예제에서는 lReturn이 LONG 형식의 유효한 변수이고, hCard가 SCardConnect 함수에 대한 이전 호출에서 받은 유효한 핸들이고, hCard가 SCardBeginTransaction 함수에 대한 이전 호출에 전달되었다고 가정합니다.
lReturn = SCardEndTransaction(hCard,
SCARD_LEAVE_CARD);
if ( SCARD_S_SUCCESS != lReturn )
printf("Failed SCardEndTransaction\n");
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | winscard.h |
라이브러리 | Winscard.lib |
DLL | Winscard.dll |