| winscard.h (6.0.6000.16386-Windows 6.0) | | winscard.h (6.1.7600.16385-Windows 7.0) |
| | |
| skipping to change at line 104 | | skipping to change at line 104 |
| // calling application must have appropriate | | // calling application must have appropriate |
| // access permissions for any database actions.) | | // access permissions for any database actions.) |
| #define SCARD_SCOPE_SYSTEM 2 // The context is the system context, and any | | #define SCARD_SCOPE_SYSTEM 2 // The context is the system context, and any |
| // database operations are performed within the | | // database operations are performed within the |
| // domain of the system. (The calling | | // domain of the system. (The calling |
| // application must have appropriate access | | // application must have appropriate access |
| // permissions for any database actions.) | | // permissions for any database actions.) |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardEstablishContext( | | SCardEstablishContext( |
|
| IN DWORD dwScope, | | __in DWORD dwScope, |
| IN LPCVOID pvReserved1, | | __reserved LPCVOID pvReserved1, |
| IN LPCVOID pvReserved2, | | __reserved LPCVOID pvReserved2, |
| OUT LPSCARDCONTEXT phContext); | | __out LPSCARDCONTEXT phContext); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardReleaseContext( | | SCardReleaseContext( |
|
| IN SCARDCONTEXT hContext); | | __in SCARDCONTEXT hContext); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIsValidContext( | | SCardIsValidContext( |
|
| IN SCARDCONTEXT hContext); | | __in SCARDCONTEXT hContext); |
| | |
| // | | // |
| //////////////////////////////////////////////////////////////////////////////// | | //////////////////////////////////////////////////////////////////////////////// |
| // | | // |
| // Smart Card Database Management Services | | // Smart Card Database Management Services |
| // | | // |
| // The following services provide for managing the Smart Card Database. | | // The following services provide for managing the Smart Card Database. |
| // | | // |
| | |
| #define SCARD_ALL_READERS TEXT("SCard$AllReaders\000") | | #define SCARD_ALL_READERS TEXT("SCard$AllReaders\000") |
| | |
| skipping to change at line 140 | | skipping to change at line 140 |
| #define SCARD_PROVIDER_PRIMARY 1 // Primary Provider Id | | #define SCARD_PROVIDER_PRIMARY 1 // Primary Provider Id |
| #define SCARD_PROVIDER_CSP 2 // Crypto Service Provider Id | | #define SCARD_PROVIDER_CSP 2 // Crypto Service Provider Id |
| #define SCARD_PROVIDER_KSP 3 // Key Storage Provider Id | | #define SCARD_PROVIDER_KSP 3 // Key Storage Provider Id |
| | |
| // | | // |
| // Database Reader routines | | // Database Reader routines |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListReaderGroupsA( | | SCardListReaderGroupsA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| OUT LPSTR mszGroups, | | __nullnullterminated __out_ecount_opt(*pcchGroups) LPSTR mszGroups, |
| IN OUT LPDWORD pcchGroups); | | __inout LPDWORD pcchGroups); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListReaderGroupsW( | | SCardListReaderGroupsW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| OUT LPWSTR mszGroups, | | __nullnullterminated __out_ecount_opt(*pcchGroups) LPWSTR mszGroups, |
| IN OUT LPDWORD pcchGroups); | | __inout LPDWORD pcchGroups); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardListReaderGroups SCardListReaderGroupsW | | #define SCardListReaderGroups SCardListReaderGroupsW |
| #else | | #else |
| #define SCardListReaderGroups SCardListReaderGroupsA | | #define SCardListReaderGroups SCardListReaderGroupsA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListReadersA( | | SCardListReadersA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR mszGroups, | | __in_opt LPCSTR mszGroups, |
| OUT LPSTR mszReaders, | | __nullnullterminated __out_ecount_opt(*pcchReaders) LPSTR mszReaders, |
| IN OUT LPDWORD pcchReaders); | | __inout LPDWORD pcchReaders); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListReadersW( | | SCardListReadersW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR mszGroups, | | __in_opt LPCWSTR mszGroups, |
| OUT LPWSTR mszReaders, | | __nullnullterminated __out_ecount_opt(*pcchReaders) LPWSTR mszReaders, |
| IN OUT LPDWORD pcchReaders); | | __inout LPDWORD pcchReaders); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardListReaders SCardListReadersW | | #define SCardListReaders SCardListReadersW |
| #else | | #else |
| #define SCardListReaders SCardListReadersA | | #define SCardListReaders SCardListReadersA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListCardsA( | | SCardListCardsA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCBYTE pbAtr, | | __in_opt LPCBYTE pbAtr, |
| IN LPCGUID rgquidInterfaces, | | __in_ecount_opt(cguidInterfaceCount) LPCGUID rgquidInterfaces, |
| IN DWORD cguidInterfaceCount, | | __in DWORD cguidInterfaceCount, |
| OUT LPSTR mszCards, | | __nullnullterminated __out_ecount_opt(*pcchCards) LPSTR mszCards, |
| IN OUT LPDWORD pcchCards); | | __inout LPDWORD pcchCards); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListCardsW( | | SCardListCardsW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCBYTE pbAtr, | | __in_opt LPCBYTE pbAtr, |
| IN LPCGUID rgquidInterfaces, | | __in_ecount_opt(cguidInterfaceCount) LPCGUID rgquidInterfaces, |
| IN DWORD cguidInterfaceCount, | | __in DWORD cguidInterfaceCount, |
| OUT LPWSTR mszCards, | | __nullnullterminated __out_ecount_opt(*pcchCards) LPWSTR mszCards, |
| IN OUT LPDWORD pcchCards); | | __inout LPDWORD pcchCards); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardListCards SCardListCardsW | | #define SCardListCards SCardListCardsW |
| #else | | #else |
| #define SCardListCards SCardListCardsA | | #define SCardListCards SCardListCardsA |
| #endif // !UNICODE | | #endif // !UNICODE |
| // | | // |
| // NOTE: The routine SCardListCards name differs from the PC/SC definition. | | // NOTE: The routine SCardListCards name differs from the PC/SC definition. |
| // It should be: | | // It should be: |
| // | | // |
| // extern WINSCARDAPI LONG WINAPI | | // extern WINSCARDAPI LONG WINAPI |
| // SCardListCardTypes( | | // SCardListCardTypes( |
|
| // IN SCARDCONTEXT hContext, | | // __in SCARDCONTEXT hContext, |
| // IN LPCBYTE pbAtr, | | // __in_opt LPCBYTE pbAtr, |
| // IN LPCGUID rgquidInterfaces, | | // __in_opt LPCGUID rgquidInterfaces, |
| // IN DWORD cguidInterfaceCount, | | // __in DWORD cguidInterfaceCount, |
| // OUT LPTSTR mszCards, | | // __out_opt LPTSTR mszCards, |
| // IN OUT LPDWORD pcchCards); | | // __inout LPDWORD pcchCards); |
| // | | // |
| // Here's a work-around MACRO: | | // Here's a work-around MACRO: |
| #define SCardListCardTypes SCardListCards | | #define SCardListCardTypes SCardListCards |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListInterfacesA( | | SCardListInterfacesA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szCard, | | __in LPCSTR szCard, |
| OUT LPGUID pguidInterfaces, | | __out LPGUID pguidInterfaces, |
| IN OUT LPDWORD pcguidInterfaces); | | __inout LPDWORD pcguidInterfaces); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardListInterfacesW( | | SCardListInterfacesW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szCard, | | __in LPCWSTR szCard, |
| OUT LPGUID pguidInterfaces, | | __out LPGUID pguidInterfaces, |
| IN OUT LPDWORD pcguidInterfaces); | | __inout LPDWORD pcguidInterfaces); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardListInterfaces SCardListInterfacesW | | #define SCardListInterfaces SCardListInterfacesW |
| #else | | #else |
| #define SCardListInterfaces SCardListInterfacesA | | #define SCardListInterfaces SCardListInterfacesA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetProviderIdA( | | SCardGetProviderIdA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szCard, | | __in LPCSTR szCard, |
| OUT LPGUID pguidProviderId); | | __out LPGUID pguidProviderId); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetProviderIdW( | | SCardGetProviderIdW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szCard, | | __in LPCWSTR szCard, |
| OUT LPGUID pguidProviderId); | | __out LPGUID pguidProviderId); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardGetProviderId SCardGetProviderIdW | | #define SCardGetProviderId SCardGetProviderIdW |
| #else | | #else |
| #define SCardGetProviderId SCardGetProviderIdA | | #define SCardGetProviderId SCardGetProviderIdA |
| #endif // !UNICODE | | #endif // !UNICODE |
| // | | // |
| // NOTE: The routine SCardGetProviderId in this implementation uses GUIDs. | | // NOTE: The routine SCardGetProviderId in this implementation uses GUIDs. |
| // The PC/SC definition uses BYTEs. | | // The PC/SC definition uses BYTEs. |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetCardTypeProviderNameA( | | SCardGetCardTypeProviderNameA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szCardName, | | __in LPCSTR szCardName, |
| IN DWORD dwProviderId, | | __in DWORD dwProviderId, |
| OUT LPSTR szProvider, | | __out_ecount_opt(*pcchProvider) LPSTR szProvider, |
| IN OUT LPDWORD pcchProvider); | | __inout LPDWORD pcchProvider); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetCardTypeProviderNameW( | | SCardGetCardTypeProviderNameW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szCardName, | | __in LPCWSTR szCardName, |
| IN DWORD dwProviderId, | | __in DWORD dwProviderId, |
| OUT LPWSTR szProvider, | | __out_ecount_opt(*pcchProvider) LPWSTR szProvider, |
| IN OUT LPDWORD pcchProvider); | | __inout LPDWORD pcchProvider); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardGetCardTypeProviderName SCardGetCardTypeProviderNameW | | #define SCardGetCardTypeProviderName SCardGetCardTypeProviderNameW |
| #else | | #else |
| #define SCardGetCardTypeProviderName SCardGetCardTypeProviderNameA | | #define SCardGetCardTypeProviderName SCardGetCardTypeProviderNameA |
| #endif // !UNICODE | | #endif // !UNICODE |
| // | | // |
| // NOTE: This routine is an extension to the PC/SC definitions. | | // NOTE: This routine is an extension to the PC/SC definitions. |
| // | | // |
| | |
| // | | // |
| // Database Writer routines | | // Database Writer routines |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIntroduceReaderGroupA( | | SCardIntroduceReaderGroupA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szGroupName); | | __in LPCSTR szGroupName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIntroduceReaderGroupW( | | SCardIntroduceReaderGroupW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szGroupName); | | __in LPCWSTR szGroupName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardIntroduceReaderGroup SCardIntroduceReaderGroupW | | #define SCardIntroduceReaderGroup SCardIntroduceReaderGroupW |
| #else | | #else |
| #define SCardIntroduceReaderGroup SCardIntroduceReaderGroupA | | #define SCardIntroduceReaderGroup SCardIntroduceReaderGroupA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardForgetReaderGroupA( | | SCardForgetReaderGroupA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szGroupName); | | __in LPCSTR szGroupName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardForgetReaderGroupW( | | SCardForgetReaderGroupW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szGroupName); | | __in LPCWSTR szGroupName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardForgetReaderGroup SCardForgetReaderGroupW | | #define SCardForgetReaderGroup SCardForgetReaderGroupW |
| #else | | #else |
| #define SCardForgetReaderGroup SCardForgetReaderGroupA | | #define SCardForgetReaderGroup SCardForgetReaderGroupA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIntroduceReaderA( | | SCardIntroduceReaderA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szReaderName, | | __in LPCSTR szReaderName, |
| IN LPCSTR szDeviceName); | | __in LPCSTR szDeviceName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIntroduceReaderW( | | SCardIntroduceReaderW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szReaderName, | | __in LPCWSTR szReaderName, |
| IN LPCWSTR szDeviceName); | | __in LPCWSTR szDeviceName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardIntroduceReader SCardIntroduceReaderW | | #define SCardIntroduceReader SCardIntroduceReaderW |
| #else | | #else |
| #define SCardIntroduceReader SCardIntroduceReaderA | | #define SCardIntroduceReader SCardIntroduceReaderA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardForgetReaderA( | | SCardForgetReaderA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szReaderName); | | __in LPCSTR szReaderName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardForgetReaderW( | | SCardForgetReaderW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szReaderName); | | __in LPCWSTR szReaderName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardForgetReader SCardForgetReaderW | | #define SCardForgetReader SCardForgetReaderW |
| #else | | #else |
| #define SCardForgetReader SCardForgetReaderA | | #define SCardForgetReader SCardForgetReaderA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardAddReaderToGroupA( | | SCardAddReaderToGroupA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szReaderName, | | __in LPCSTR szReaderName, |
| IN LPCSTR szGroupName); | | __in LPCSTR szGroupName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardAddReaderToGroupW( | | SCardAddReaderToGroupW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szReaderName, | | __in LPCWSTR szReaderName, |
| IN LPCWSTR szGroupName); | | __in LPCWSTR szGroupName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardAddReaderToGroup SCardAddReaderToGroupW | | #define SCardAddReaderToGroup SCardAddReaderToGroupW |
| #else | | #else |
| #define SCardAddReaderToGroup SCardAddReaderToGroupA | | #define SCardAddReaderToGroup SCardAddReaderToGroupA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardRemoveReaderFromGroupA( | | SCardRemoveReaderFromGroupA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szReaderName, | | __in LPCSTR szReaderName, |
| IN LPCSTR szGroupName); | | __in LPCSTR szGroupName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardRemoveReaderFromGroupW( | | SCardRemoveReaderFromGroupW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szReaderName, | | __in LPCWSTR szReaderName, |
| IN LPCWSTR szGroupName); | | __in LPCWSTR szGroupName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardRemoveReaderFromGroup SCardRemoveReaderFromGroupW | | #define SCardRemoveReaderFromGroup SCardRemoveReaderFromGroupW |
| #else | | #else |
| #define SCardRemoveReaderFromGroup SCardRemoveReaderFromGroupA | | #define SCardRemoveReaderFromGroup SCardRemoveReaderFromGroupA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIntroduceCardTypeA( | | SCardIntroduceCardTypeA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szCardName, | | __in LPCSTR szCardName, |
| IN LPCGUID pguidPrimaryProvider, | | __in_opt LPCGUID pguidPrimaryProvider, |
| IN LPCGUID rgguidInterfaces, | | __in_opt LPCGUID rgguidInterfaces, |
| IN DWORD dwInterfaceCount, | | __in DWORD dwInterfaceCount, |
| IN LPCBYTE pbAtr, | | __in LPCBYTE pbAtr, |
| IN LPCBYTE pbAtrMask, | | __in LPCBYTE pbAtrMask, |
| IN DWORD cbAtrLen); | | __in DWORD cbAtrLen); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardIntroduceCardTypeW( | | SCardIntroduceCardTypeW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szCardName, | | __in LPCWSTR szCardName, |
| IN LPCGUID pguidPrimaryProvider, | | __in_opt LPCGUID pguidPrimaryProvider, |
| IN LPCGUID rgguidInterfaces, | | __in_opt LPCGUID rgguidInterfaces, |
| IN DWORD dwInterfaceCount, | | __in DWORD dwInterfaceCount, |
| IN LPCBYTE pbAtr, | | __in LPCBYTE pbAtr, |
| IN LPCBYTE pbAtrMask, | | __in LPCBYTE pbAtrMask, |
| IN DWORD cbAtrLen); | | __in DWORD cbAtrLen); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardIntroduceCardType SCardIntroduceCardTypeW | | #define SCardIntroduceCardType SCardIntroduceCardTypeW |
| #else | | #else |
| #define SCardIntroduceCardType SCardIntroduceCardTypeA | | #define SCardIntroduceCardType SCardIntroduceCardTypeA |
| #endif // !UNICODE | | #endif // !UNICODE |
| // | | // |
| // NOTE: The routine SCardIntroduceCardType's parameters' order differs from | | // NOTE: The routine SCardIntroduceCardType's parameters' order differs from |
| // the PC/SC definition. It should be: | | // the PC/SC definition. It should be: |
| // | | // |
| // extern WINSCARDAPI LONG WINAPI | | // extern WINSCARDAPI LONG WINAPI |
| // SCardIntroduceCardType( | | // SCardIntroduceCardType( |
|
| // IN SCARDCONTEXT hContext, | | // __in SCARDCONTEXT hContext, |
| // IN LPCTSTR szCardName, | | // __in LPCTSTR szCardName, |
| // IN LPCBYTE pbAtr, | | // __in LPCBYTE pbAtr, |
| // IN LPCBYTE pbAtrMask, | | // __in LPCBYTE pbAtrMask, |
| // IN DWORD cbAtrLen, | | // __in DWORD cbAtrLen, |
| // IN LPCGUID pguidPrimaryProvider, | | // __in_opt LPCGUID pguidPrimaryProvider, |
| // IN LPCGUID rgguidInterfaces, | | // __in_opt LPCGUID rgguidInterfaces, |
| // IN DWORD dwInterfaceCount); | | // __in DWORD dwInterfaceCount); |
| // | | // |
| // Here's a work-around MACRO: | | // Here's a work-around MACRO: |
| #define PCSCardIntroduceCardType(hContext, szCardName, pbAtr, pbAtrMask, cbAtrLe
n, pguidPrimaryProvider, rgguidInterfaces, dwInterfaceCount) \ | | #define PCSCardIntroduceCardType(hContext, szCardName, pbAtr, pbAtrMask, cbAtrLe
n, pguidPrimaryProvider, rgguidInterfaces, dwInterfaceCount) \ |
| SCardIntroduceCardType(hContext, szCardName, pguidPrimaryProvider, rgg
uidInterfaces, dwInterfaceCount, pbAtr, pbAtrMask, cbAtrLen) | | SCardIntroduceCardType(hContext, szCardName, pguidPrimaryProvider, rgg
uidInterfaces, dwInterfaceCount, pbAtr, pbAtrMask, cbAtrLen) |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardSetCardTypeProviderNameA( | | SCardSetCardTypeProviderNameA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szCardName, | | __in LPCSTR szCardName, |
| IN DWORD dwProviderId, | | __in DWORD dwProviderId, |
| IN LPCSTR szProvider); | | __in LPCSTR szProvider); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardSetCardTypeProviderNameW( | | SCardSetCardTypeProviderNameW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szCardName, | | __in LPCWSTR szCardName, |
| IN DWORD dwProviderId, | | __in DWORD dwProviderId, |
| IN LPCWSTR szProvider); | | __in LPCWSTR szProvider); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardSetCardTypeProviderName SCardSetCardTypeProviderNameW | | #define SCardSetCardTypeProviderName SCardSetCardTypeProviderNameW |
| #else | | #else |
| #define SCardSetCardTypeProviderName SCardSetCardTypeProviderNameA | | #define SCardSetCardTypeProviderName SCardSetCardTypeProviderNameA |
| #endif // !UNICODE | | #endif // !UNICODE |
| // | | // |
| // NOTE: This routine is an extention to the PC/SC specifications. | | // NOTE: This routine is an extention to the PC/SC specifications. |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardForgetCardTypeA( | | SCardForgetCardTypeA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szCardName); | | __in LPCSTR szCardName); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardForgetCardTypeW( | | SCardForgetCardTypeW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szCardName); | | __in LPCWSTR szCardName); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardForgetCardType SCardForgetCardTypeW | | #define SCardForgetCardType SCardForgetCardTypeW |
| #else | | #else |
| #define SCardForgetCardType SCardForgetCardTypeA | | #define SCardForgetCardType SCardForgetCardTypeA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| // | | // |
| //////////////////////////////////////////////////////////////////////////////// | | //////////////////////////////////////////////////////////////////////////////// |
| // | | // |
| // Service Manager Support Routines | | // Service Manager Support Routines |
| // | | // |
| // The following services are supplied to simplify the use of the Service | | // The following services are supplied to simplify the use of the Service |
| // Manager API. | | // Manager API. |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardFreeMemory( | | SCardFreeMemory( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCVOID pvMem); | | __in LPCVOID pvMem); |
| | |
| #if (NTDDI_VERSION >= NTDDI_WINXP) | | #if (NTDDI_VERSION >= NTDDI_WINXP) |
| extern WINSCARDAPI HANDLE WINAPI | | extern WINSCARDAPI HANDLE WINAPI |
| SCardAccessStartedEvent(void); | | SCardAccessStartedEvent(void); |
| | |
| extern WINSCARDAPI void WINAPI | | extern WINSCARDAPI void WINAPI |
| SCardReleaseStartedEvent(void); | | SCardReleaseStartedEvent(void); |
| #endif // (NTDDI_VERSION >= NTDDI_WINXP) | | #endif // (NTDDI_VERSION >= NTDDI_WINXP) |
| | |
| // | | // |
| | |
| skipping to change at line 571 | | skipping to change at line 571 |
| // set. | | // set. |
| #define SCARD_STATE_MUTE 0x00000200 // This implies that the card in the | | #define SCARD_STATE_MUTE 0x00000200 // This implies that the card in the |
| // reader is unresponsive or not | | // reader is unresponsive or not |
| // supported by the reader or | | // supported by the reader or |
| // software. | | // software. |
| #define SCARD_STATE_UNPOWERED 0x00000400 // This implies that the card in the | | #define SCARD_STATE_UNPOWERED 0x00000400 // This implies that the card in the |
| // reader has not been powered up. | | // reader has not been powered up. |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardLocateCardsA( | | SCardLocateCardsA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR mszCards, | | __in LPCSTR mszCards, |
| IN OUT LPSCARD_READERSTATEA rgReaderStates, | | __inout LPSCARD_READERSTATEA rgReaderStates, |
| IN DWORD cReaders); | | __in DWORD cReaders); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardLocateCardsW( | | SCardLocateCardsW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR mszCards, | | __in LPCWSTR mszCards, |
| IN OUT LPSCARD_READERSTATEW rgReaderStates, | | __inout LPSCARD_READERSTATEW rgReaderStates, |
| IN DWORD cReaders); | | __in DWORD cReaders); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardLocateCards SCardLocateCardsW | | #define SCardLocateCards SCardLocateCardsW |
| #else | | #else |
| #define SCardLocateCards SCardLocateCardsA | | #define SCardLocateCards SCardLocateCardsA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| #if (NTDDI_VERSION >= NTDDI_WINXP) | | #if (NTDDI_VERSION >= NTDDI_WINXP) |
| typedef struct _SCARD_ATRMASK { | | typedef struct _SCARD_ATRMASK { |
| DWORD cbAtr; // Number of bytes in the ATR and the mask. | | DWORD cbAtr; // Number of bytes in the ATR and the mask. |
| BYTE rgbAtr[36]; // Atr of card (extra alignment bytes) | | BYTE rgbAtr[36]; // Atr of card (extra alignment bytes) |
| BYTE rgbMask[36]; // Mask for the Atr (extra alignment bytes) | | BYTE rgbMask[36]; // Mask for the Atr (extra alignment bytes) |
| } SCARD_ATRMASK, *PSCARD_ATRMASK, *LPSCARD_ATRMASK; | | } SCARD_ATRMASK, *PSCARD_ATRMASK, *LPSCARD_ATRMASK; |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardLocateCardsByATRA( | | SCardLocateCardsByATRA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPSCARD_ATRMASK rgAtrMasks, | | __in LPSCARD_ATRMASK rgAtrMasks, |
| IN DWORD cAtrs, | | __in DWORD cAtrs, |
| IN OUT LPSCARD_READERSTATEA rgReaderStates, | | __inout LPSCARD_READERSTATEA rgReaderStates, |
| IN DWORD cReaders); | | __in DWORD cReaders); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardLocateCardsByATRW( | | SCardLocateCardsByATRW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPSCARD_ATRMASK rgAtrMasks, | | __in LPSCARD_ATRMASK rgAtrMasks, |
| IN DWORD cAtrs, | | __in DWORD cAtrs, |
| IN OUT LPSCARD_READERSTATEW rgReaderStates, | | __inout LPSCARD_READERSTATEW rgReaderStates, |
| IN DWORD cReaders); | | __in DWORD cReaders); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardLocateCardsByATR SCardLocateCardsByATRW | | #define SCardLocateCardsByATR SCardLocateCardsByATRW |
| #else | | #else |
| #define SCardLocateCardsByATR SCardLocateCardsByATRA | | #define SCardLocateCardsByATR SCardLocateCardsByATRA |
| #endif // !UNICODE | | #endif // !UNICODE |
| #endif // (NTDDI_VERSION >= NTDDI_WINXP) | | #endif // (NTDDI_VERSION >= NTDDI_WINXP) |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetStatusChangeA( | | SCardGetStatusChangeA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN DWORD dwTimeout, | | __in DWORD dwTimeout, |
| IN OUT LPSCARD_READERSTATEA rgReaderStates, | | __inout LPSCARD_READERSTATEA rgReaderStates, |
| IN DWORD cReaders); | | __in DWORD cReaders); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetStatusChangeW( | | SCardGetStatusChangeW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN DWORD dwTimeout, | | __in DWORD dwTimeout, |
| IN OUT LPSCARD_READERSTATEW rgReaderStates, | | __inout LPSCARD_READERSTATEW rgReaderStates, |
| IN DWORD cReaders); | | __in DWORD cReaders); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardGetStatusChange SCardGetStatusChangeW | | #define SCardGetStatusChange SCardGetStatusChangeW |
| #else | | #else |
| #define SCardGetStatusChange SCardGetStatusChangeA | | #define SCardGetStatusChange SCardGetStatusChangeA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardCancel( | | SCardCancel( |
|
| IN SCARDCONTEXT hContext); | | __in SCARDCONTEXT hContext); |
| | |
| // | | // |
| //////////////////////////////////////////////////////////////////////////////// | | //////////////////////////////////////////////////////////////////////////////// |
| // | | // |
| // Card/Reader Communication Services | | // Card/Reader Communication Services |
| // | | // |
| // The following services provide means for communication with the card. | | // The following services provide means for communication with the card. |
| // | | // |
| | |
| #define SCARD_SHARE_EXCLUSIVE 1 // This application is not willing to share this | | #define SCARD_SHARE_EXCLUSIVE 1 // This application is not willing to share this |
| | |
| skipping to change at line 660 | | skipping to change at line 660 |
| // the reader, so it is not available to other | | // the reader, so it is not available to other |
| // applications. | | // applications. |
| | |
| #define SCARD_LEAVE_CARD 0 // Don't do anything special on close | | #define SCARD_LEAVE_CARD 0 // Don't do anything special on close |
| #define SCARD_RESET_CARD 1 // Reset the card on close | | #define SCARD_RESET_CARD 1 // Reset the card on close |
| #define SCARD_UNPOWER_CARD 2 // Power down the card on close | | #define SCARD_UNPOWER_CARD 2 // Power down the card on close |
| #define SCARD_EJECT_CARD 3 // Eject the card on close | | #define SCARD_EJECT_CARD 3 // Eject the card on close |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardConnectA( | | SCardConnectA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCSTR szReader, | | __in LPCSTR szReader, |
| IN DWORD dwShareMode, | | __in DWORD dwShareMode, |
| IN DWORD dwPreferredProtocols, | | __in DWORD dwPreferredProtocols, |
| OUT LPSCARDHANDLE phCard, | | __out LPSCARDHANDLE phCard, |
| OUT LPDWORD pdwActiveProtocol); | | __out LPDWORD pdwActiveProtocol); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardConnectW( | | SCardConnectW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN LPCWSTR szReader, | | __in LPCWSTR szReader, |
| IN DWORD dwShareMode, | | __in DWORD dwShareMode, |
| IN DWORD dwPreferredProtocols, | | __in DWORD dwPreferredProtocols, |
| OUT LPSCARDHANDLE phCard, | | __out LPSCARDHANDLE phCard, |
| OUT LPDWORD pdwActiveProtocol); | | __out LPDWORD pdwActiveProtocol); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardConnect SCardConnectW | | #define SCardConnect SCardConnectW |
| #else | | #else |
| #define SCardConnect SCardConnectA | | #define SCardConnect SCardConnectA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardReconnect( | | SCardReconnect( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN DWORD dwShareMode, | | __in DWORD dwShareMode, |
| IN DWORD dwPreferredProtocols, | | __in DWORD dwPreferredProtocols, |
| IN DWORD dwInitialization, | | __in DWORD dwInitialization, |
| OUT LPDWORD pdwActiveProtocol); | | __out_opt LPDWORD pdwActiveProtocol); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardDisconnect( | | SCardDisconnect( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN DWORD dwDisposition); | | __in DWORD dwDisposition); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardBeginTransaction( | | SCardBeginTransaction( |
|
| IN SCARDHANDLE hCard); | | __in SCARDHANDLE hCard); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardEndTransaction( | | SCardEndTransaction( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN DWORD dwDisposition); | | __in DWORD dwDisposition); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardCancelTransaction( | | SCardCancelTransaction( |
|
| IN SCARDHANDLE hCard); | | __in SCARDHANDLE hCard); |
| // | | // |
| // NOTE: This call corresponds to the PC/SC SCARDCOMM::Cancel routine, | | // NOTE: This call corresponds to the PC/SC SCARDCOMM::Cancel routine, |
| // terminating a blocked SCardBeginTransaction service. | | // terminating a blocked SCardBeginTransaction service. |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardState( | | SCardState( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| OUT LPDWORD pdwState, | | __out LPDWORD pdwState, |
| OUT LPDWORD pdwProtocol, | | __out LPDWORD pdwProtocol, |
| OUT LPBYTE pbAtr, | | __out_bcount(*pcbAtrLen) LPBYTE pbAtr, |
| IN OUT LPDWORD pcbAtrLen); | | __inout LPDWORD pcbAtrLen); |
| // | | // |
| // NOTE: SCardState is an obsolete routine. PC/SC has replaced it with | | // NOTE: SCardState is an obsolete routine. PC/SC has replaced it with |
| // SCardStatus. | | // SCardStatus. |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardStatusA( | | SCardStatusA( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| OUT LPSTR szReaderName, | | __nullnullterminated __out_ecount_opt(*pcchReaderLen) LPSTR mszReaderNames, |
| IN OUT LPDWORD pcchReaderLen, | | __inout_opt LPDWORD pcchReaderLen, |
| OUT LPDWORD pdwState, | | __out_opt LPDWORD pdwState, |
| OUT LPDWORD pdwProtocol, | | __out_opt LPDWORD pdwProtocol, |
| OUT LPBYTE pbAtr, | | __out_ecount_opt(*pcbAtrLen) LPBYTE pbAtr, |
| IN OUT LPDWORD pcbAtrLen); | | __inout_opt LPDWORD pcbAtrLen); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardStatusW( | | SCardStatusW( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| OUT LPWSTR szReaderName, | | __nullnullterminated __out_ecount_opt(*pcchReaderLen) LPWSTR mszReaderNames, |
| IN OUT LPDWORD pcchReaderLen, | | __inout_opt LPDWORD pcchReaderLen, |
| OUT LPDWORD pdwState, | | __out_opt LPDWORD pdwState, |
| OUT LPDWORD pdwProtocol, | | __out_opt LPDWORD pdwProtocol, |
| OUT LPBYTE pbAtr, | | __out_ecount_opt(*pcbAtrLen) LPBYTE pbAtr, |
| IN OUT LPDWORD pcbAtrLen); | | __inout_opt LPDWORD pcbAtrLen); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardStatus SCardStatusW | | #define SCardStatus SCardStatusW |
| #else | | #else |
| #define SCardStatus SCardStatusA | | #define SCardStatus SCardStatusA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardTransmit( | | SCardTransmit( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN LPCSCARD_IO_REQUEST pioSendPci, | | __in LPCSCARD_IO_REQUEST pioSendPci, |
| IN LPCBYTE pbSendBuffer, | | __in_bcount(cbSendLength) LPCBYTE pbSendBuffer, |
| IN DWORD cbSendLength, | | __in DWORD cbSendLength, |
| IN OUT LPSCARD_IO_REQUEST pioRecvPci, | | __inout_opt LPSCARD_IO_REQUEST pioRecvPci, |
| OUT LPBYTE pbRecvBuffer, | | __out_bcount(*pcbRecvLength) LPBYTE pbRecvBuffer, |
| IN OUT LPDWORD pcbRecvLength); | | __inout LPDWORD pcbRecvLength); |
| | |
|
| #if (NTDDI_VERSION >= NTDDI_LONGHORN) | | #if (NTDDI_VERSION >= NTDDI_VISTA) |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetTransmitCount( | | SCardGetTransmitCount( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| OUT LPDWORD pcTransmitCount); | | __out LPDWORD pcTransmitCount); |
| #endif // (NTDDI_VERSION >= NTDDI_LONGHORN) | | #endif // (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
| // | | // |
| //////////////////////////////////////////////////////////////////////////////// | | //////////////////////////////////////////////////////////////////////////////// |
| // | | // |
| // Reader Control Routines | | // Reader Control Routines |
| // | | // |
| // The following services provide for direct, low-level manipulation of the | | // The following services provide for direct, low-level manipulation of the |
| // reader by the calling application allowing it control over the | | // reader by the calling application allowing it control over the |
| // attributes of the communications with the card. | | // attributes of the communications with the card. |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardControl( | | SCardControl( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN DWORD dwControlCode, | | __in DWORD dwControlCode, |
| IN LPCVOID lpInBuffer, | | __in_bcount(cbInBufferSize) LPCVOID lpInBuffer, |
| IN DWORD nInBufferSize, | | __in DWORD cbInBufferSize, |
| OUT LPVOID lpOutBuffer, | | __out_bcount(cbOutBufferSize) LPVOID lpOutBuffer, |
| IN DWORD nOutBufferSize, | | __in DWORD cbOutBufferSize, |
| OUT LPDWORD lpBytesReturned); | | __out LPDWORD lpBytesReturned); |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardGetAttrib( | | SCardGetAttrib( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN DWORD dwAttrId, | | __in DWORD dwAttrId, |
| OUT LPBYTE pbAttr, | | __out_bcount_opt(*pcbAttrLen) LPBYTE pbAttr, |
| IN OUT LPDWORD pcbAttrLen); | | __inout LPDWORD pcbAttrLen); |
| // | | // |
| // NOTE: The routine SCardGetAttrib's name differs from the PC/SC definition. | | // NOTE: The routine SCardGetAttrib's name differs from the PC/SC definition. |
| // It should be: | | // It should be: |
| // | | // |
| // extern WINSCARDAPI LONG WINAPI | | // extern WINSCARDAPI LONG WINAPI |
| // SCardGetReaderCapabilities( | | // SCardGetReaderCapabilities( |
|
| // IN SCARDHANDLE hCard, | | // __in SCARDHANDLE hCard, |
| // IN DWORD dwTag, | | // __in DWORD dwTag, |
| // OUT LPBYTE pbAttr, | | // __out LPBYTE pbAttr, |
| // IN OUT LPDWORD pcbAttrLen); | | // __inout LPDWORD pcbAttrLen); |
| // | | // |
| // Here's a work-around MACRO: | | // Here's a work-around MACRO: |
| #define SCardGetReaderCapabilities SCardGetAttrib | | #define SCardGetReaderCapabilities SCardGetAttrib |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardSetAttrib( | | SCardSetAttrib( |
|
| IN SCARDHANDLE hCard, | | __in SCARDHANDLE hCard, |
| IN DWORD dwAttrId, | | __in DWORD dwAttrId, |
| IN LPCBYTE pbAttr, | | __in_bcount(cbAttrLen) LPCBYTE pbAttr, |
| IN DWORD cbAttrLen); | | __in DWORD cbAttrLen); |
| // | | // |
| // NOTE: The routine SCardSetAttrib's name differs from the PC/SC definition. | | // NOTE: The routine SCardSetAttrib's name differs from the PC/SC definition. |
| // It should be: | | // It should be: |
| // | | // |
| // extern WINSCARDAPI LONG WINAPI | | // extern WINSCARDAPI LONG WINAPI |
| // SCardSetReaderCapabilities( | | // SCardSetReaderCapabilities( |
|
| // IN SCARDHANDLE hCard, | | // __in SCARDHANDLE hCard, |
| // IN DWORD dwTag, | | // __in DWORD dwTag, |
| // OUT LPBYTE pbAttr, | | // __in LPCBYTE pbAttr, |
| // IN OUT LPDWORD pcbAttrLen); | | // __in DWORD cbAttrLen); |
| // | | // |
| // Here's a work-around MACRO: | | // Here's a work-around MACRO: |
| #define SCardSetReaderCapabilities SCardSetAttrib | | #define SCardSetReaderCapabilities SCardSetAttrib |
| | |
| // | | // |
| //////////////////////////////////////////////////////////////////////////////// | | //////////////////////////////////////////////////////////////////////////////// |
| // | | // |
| // Smart Card Dialog definitions | | // Smart Card Dialog definitions |
| // | | // |
| // The following section contains structures and exported function | | // The following section contains structures and exported function |
| | |
| skipping to change at line 841 | | skipping to change at line 841 |
| | |
| // Defined constants | | // Defined constants |
| // Flags | | // Flags |
| #define SC_DLG_MINIMAL_UI 0x01 | | #define SC_DLG_MINIMAL_UI 0x01 |
| #define SC_DLG_NO_UI 0x02 | | #define SC_DLG_NO_UI 0x02 |
| #define SC_DLG_FORCE_UI 0x04 | | #define SC_DLG_FORCE_UI 0x04 |
| | |
| #define SCERR_NOCARDNAME 0x4000 | | #define SCERR_NOCARDNAME 0x4000 |
| #define SCERR_NOGUIDS 0x8000 | | #define SCERR_NOGUIDS 0x8000 |
| | |
|
| typedef SCARDHANDLE (WINAPI *LPOCNCONNPROCA) (IN SCARDCONTEXT, IN LPSTR, IN LPST | | typedef SCARDHANDLE (WINAPI *LPOCNCONNPROCA) (__in SCARDCONTEXT, __in LPSTR, __i |
| R, IN PVOID); | | n LPSTR, __in PVOID); |
| typedef SCARDHANDLE (WINAPI *LPOCNCONNPROCW) (IN SCARDCONTEXT, IN LPWSTR, IN LPW | | typedef SCARDHANDLE (WINAPI *LPOCNCONNPROCW) (__in SCARDCONTEXT, __in LPWSTR, __ |
| STR, IN PVOID); | | in LPWSTR, __in PVOID); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define LPOCNCONNPROC LPOCNCONNPROCW | | #define LPOCNCONNPROC LPOCNCONNPROCW |
| #else | | #else |
| #define LPOCNCONNPROC LPOCNCONNPROCA | | #define LPOCNCONNPROC LPOCNCONNPROCA |
| #endif // !UNICODE | | #endif // !UNICODE |
|
| typedef BOOL (WINAPI *LPOCNCHKPROC) (IN SCARDCONTEXT, IN SCARDHANDLE, IN PVOID); | | typedef BOOL (WINAPI *LPOCNCHKPROC) (__in SCARDCONTEXT, __in SCARDHANDLE, __in P |
| typedef void (WINAPI *LPOCNDSCPROC) (IN SCARDCONTEXT, IN SCARDHANDLE, IN PVOID); | | VOID); |
| | typedef void (WINAPI *LPOCNDSCPROC) (__in SCARDCONTEXT, __in SCARDHANDLE, __in P |
| | VOID); |
| | |
| // | | // |
| // OPENCARD_SEARCH_CRITERIA: In order to specify a user-extended search, | | // OPENCARD_SEARCH_CRITERIA: In order to specify a user-extended search, |
| // lpfnCheck must not be NULL. Moreover, the connection to be made to the | | // lpfnCheck must not be NULL. Moreover, the connection to be made to the |
| // card before performing the callback must be indicated by either providing | | // card before performing the callback must be indicated by either providing |
| // lpfnConnect and lpfnDisconnect OR by setting dwShareMode. | | // lpfnConnect and lpfnDisconnect OR by setting dwShareMode. |
| // If both the connection callbacks and dwShareMode are non-NULL, the callbacks | | // If both the connection callbacks and dwShareMode are non-NULL, the callbacks |
| // will be used. | | // will be used. |
| // | | // |
| | |
| | |
| skipping to change at line 1069 | | skipping to change at line 1069 |
| LPOPENCARDNAMEW); | | LPOPENCARDNAMEW); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define GetOpenCardName GetOpenCardNameW | | #define GetOpenCardName GetOpenCardNameW |
| #else | | #else |
| #define GetOpenCardName GetOpenCardNameA | | #define GetOpenCardName GetOpenCardNameA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardDlgExtendedError (void); | | SCardDlgExtendedError (void); |
| | |
|
| #if (NTDDI_VERSION >= NTDDI_LONGHORN) | | #if (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
| // | | // |
| // Smartcard Caching API | | // Smartcard Caching API |
| // | | // |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardReadCacheA( | | SCardReadCacheA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN UUID *CardIdentifier, | | __in UUID *CardIdentifier, |
| IN DWORD FreshnessCounter, | | __in DWORD FreshnessCounter, |
| IN LPSTR LookupName, | | __in LPSTR LookupName, |
| OUT PBYTE Data, | | __out_bcount(*DataLen) PBYTE Data, |
| OUT DWORD *DataLen); | | __out DWORD *DataLen); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardReadCacheW( | | SCardReadCacheW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN UUID *CardIdentifier, | | __in UUID *CardIdentifier, |
| IN DWORD FreshnessCounter, | | __in DWORD FreshnessCounter, |
| IN LPWSTR LookupName, | | __in LPWSTR LookupName, |
| OUT PBYTE Data, | | __out_bcount(*DataLen) PBYTE Data, |
| OUT DWORD *DataLen); | | __out DWORD *DataLen); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardReadCache SCardReadCacheW | | #define SCardReadCache SCardReadCacheW |
| #else | | #else |
| #define SCardReadCache SCardReadCacheA | | #define SCardReadCache SCardReadCacheA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardWriteCacheA( | | SCardWriteCacheA( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN UUID *CardIdentifier, | | __in UUID *CardIdentifier, |
| IN DWORD FreshnessCounter, | | __in DWORD FreshnessCounter, |
| IN LPSTR LookupName, | | __in LPSTR LookupName, |
| IN PBYTE Data, | | __in_bcount(DataLen) PBYTE Data, |
| IN DWORD DataLen); | | __in DWORD DataLen); |
| extern WINSCARDAPI LONG WINAPI | | extern WINSCARDAPI LONG WINAPI |
| SCardWriteCacheW( | | SCardWriteCacheW( |
|
| IN SCARDCONTEXT hContext, | | __in SCARDCONTEXT hContext, |
| IN UUID *CardIdentifier, | | __in UUID *CardIdentifier, |
| IN DWORD FreshnessCounter, | | __in DWORD FreshnessCounter, |
| IN LPWSTR LookupName, | | __in LPWSTR LookupName, |
| IN PBYTE Data, | | __in_bcount(DataLen) PBYTE Data, |
| IN DWORD DataLen); | | __in DWORD DataLen); |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define SCardWriteCache SCardWriteCacheW | | #define SCardWriteCache SCardWriteCacheW |
| #else | | #else |
| #define SCardWriteCache SCardWriteCacheA | | #define SCardWriteCache SCardWriteCacheA |
| #endif // !UNICODE | | #endif // !UNICODE |
| | |
|
| #endif // (NTDDI_VERSION >= NTDDI_LONGHORN) | | #endif // (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| } | | } |
| #endif | | #endif |
| #endif // _WINSCARD_H_ | | #endif // _WINSCARD_H_ |
| | |
| End of changes. 69 change blocks. |
| 265 lines changed or deleted | | 267 lines changed or added |
|