The get_P1 method retrieves the first parameter (P1) byte from the APDU.
HRESULT get_P1(
  BYTE *pbyP1  
);
 The possible return values are the following:
| Value | Meaning | 
|---|---|
| S_OK | Operation completed successfully. | 
| E_INVALIDARG | pbyP1 is invalid. | 
| E_POINTER | A bad pointer was passed in pbyP1. | 
| E_OUTOFMEMORY | Out of memory. | 
To set the P1 parameter to a new value, call put_P1.
To get the P2 or P3 parameters, call get_P2 and get_P3 respectively.
For a list of all the methods provided by the ISCardCmd interface, see ISCardCmd.
In addition to the COM error codes listed above, this interface may return a smart card error code if a smart card function was called to complete the request. For information on smart card error codes, see Error Codes.
  Windows NT:  Use version 4.0 SP3 and later.
  Windows:  Use Windows 95 OSR2.1.
  Windows CE:  Unsupported.
  Header: Declared in scarddat.h.
  Import Library: scarddat.tlb.
get_P2, get_P3, ISCardCmd, put_P1