2013-03-20 4 views
1

나는 http://nobbi.com에서 최종 업데이트 - 2004 년 4 월까지 PCSCConnector을 사용하고 있습니다. 모든 Windows XP에서는 잘 작동하지만 Windows 7에서는 약간의 문제가있었습니다.PCSCConnector 및 Windows 7

델파이 IDE에서 Ctrl + F2 (종료)를 누르면 카드 연결이 내 소프트웨어에서 열렸을 때 모든 소프트웨어 (내 자신 포함)가 카드에 대한 새 연결을 열 수 없습니다. 카드에 새로운 연결을 생성하려면 카드 (실제로는 USB)를 다시 연결해야합니다.

나는 (SCARD_RESET_CARD에서) SCARD_LEAVE_CARDSCardDisconnect에 (SCARD_SCOPE_USER에서) SCARD_SCOPE_SYSTEMdwDispositionSCardEstablishContextdwScope을 변경하려고하지만 문제가 지속.

+0

사용자가이 작업을 수행하고 있습니까? 나는 PCSCConnector를 사용한다. (힌트 : 실제 사양에 따라 더 많은 것을 얻으려고 노력한다.) 카드가 잠기는 문제는 없다. USB를 통해 통합 된 표준 스마트 카드가없는 것 같습니다. 나는 보통 독자와 카드를 갖고 있다고 생각하며, 둘 다 연결되어 있다고 생각합니다. –

답변

2

Ctrl + F2을 사용하면 강제 종료됩니다. 어떤 코드도 제대로 정리하거나, 닫거나, 무언가를 자유롭게 할 수있는 기회를 얻지 못합니다. 라이브러리 종료 코드를 변경하면 변경 사항이 적용되지 않으므로 도움을 얻을 수 없습니다. 앱을 강제 종료하면 앱이 중단되는 것을 막을 수 있습니다.

해결 방법 : 다른 방법으로는 멈출 수없는 런 어웨이 코드를 제외하고 Ctrl + F2을 사용하지 마십시오. 응용 프로그램을 정상적으로 닫히는 방식으로 닫습니다. 따라서 정리할 기회가 있으며 finalization 코드 등을 호출 할 수 있습니다.

+0

예,하지만 독점적 인 연결을 사용하여 스마트 카드를 연결할 수 있습니다. SCARD_SCOPE_USER는 배타적 인 연결을 필요로하지 않을 수도 있습니다. 물론 좋은 운영 체제는 스마트 카드를 다시 사용할 수있게해야합니다. 그러나 운영체제가 이런 점에서 버그가 있거나, 컨텍스트가 손실되지 않고 독점적 인 연결이 유지되지 않습니다. –

+0

Finalization이 해결되지 않고 Windows XP에서 Ctrl + F2가 정상적으로 인식됩니다. –

+0

"앱을 부적절하게 닫으면 강제 종료되지 않습니다."라고 구체적으로 말했습니다. 내가 다시 쓴 것을 읽으십시오. Ctrl + F2 키를 사용하면 ** 정상적으로 종료 할 수 없습니다 **. 제대로 닫으려면 ** Ctrl + F2를 사용하여 닫지 마십시오 **. –