| Previous | Next |
| SCARD_E_INVALID_HANDLE | SCARD_E_INVALID_TARGET |
SCARD_E_INVALID_PARAMETER
What SCARD_E_INVALID_PARAMETER means
SCARD_E_INVALID_PARAMETER (0x80100004) means one or more parameters supplied to a smart-card operation could not be properly interpreted. It is an argument-contract failure, not by itself evidence that the reader or card is defective.
What to capture
- Record the exact SCard or card-minidriver function that returned the code and all flags, handles, buffer sizes, protocol values, and access modes supplied to that call.
- For pointer/length pairs, verify that the buffer and size agree, especially for APIs that first query the required length and then perform a second call.
- Check enumeration values against the contract used by the installed minidriver or provider instead of assuming a value accepted by another card implementation is valid here.
- Keep the reader name, ATR, negotiated protocol, sharing mode, and card state when they are relevant to the failing API.
For example, Microsoft documents CardAuthenticatePin returning this code when pbPin is NULL; other smart-card functions use the same HRESULT for their own invalid-parameter conditions.
Technical references
Looking for a different code? Search another status or error code.