PROTECTED PROCEDURE declare DECLARE INTEGER StringFromGUID2 IN ole32; STRING rguid, STRING @lpsz, INTEGER cchMax DECLARE LONG SCardEstablishContext IN Winscard; INTEGER dwScope, INTEGER pvReserved1,; INTEGER pvReserved2, INTEGER @phContext DECLARE LONG SCardReleaseContext IN Winscard; INTEGER hContext DECLARE LONG SCardListReaderGroups IN Winscard; LONG hContext, STRING @mszGroups,; LONG @pcchGroups DECLARE LONG SCardListReaders IN Winscard; INTEGER hContext, STRING mszGroups,; STRING @mszReaders, LONG @pcchReaders DECLARE LONG SCardListCards IN Winscard; INTEGER hContext, INTEGER pbAtr,; INTEGER rgguidInterfaces, LONG cguidInterfaceCount,; STRING @mszCards, LONG @pcchCards DECLARE LONG SCardListInterfaces IN Winscard; INTEGER hContext, STRING szCard,; STRING @pguidInterfaces, LONG @pcguidInterfaces DECLARE LONG SCardGetProviderId IN Winscard; INTEGER hContext, STRING szCard,; STRING @pguidProviderId DECLARE LONG SCardGetCardTypeProviderName IN Winscard; INTEGER hContext, STRING szCardName,; LONG dwProviderId, STRING @szProvider,; LONG @pcchProvider DECLARE LONG SCardConnect IN Winscard; INTEGER hContext, STRING szReader,; LONG dwShareMode, LONG dwPreferredProtocols,; INTEGER @phCard, LONG @pdwActiveProtocol DECLARE LONG SCardControl IN Winscard; INTEGER hCard, LONG dwControlCode,; STRING lpInBuffer, LONG nInBufferSize,; STRING @lpOutBuffer, LONG nOutBufferSize,; LONG @lpBytesReturned DECLARE LONG SCardDisconnect IN Winscard; INTEGER hCard, LONG dwDisposition DECLARE LONG SCardGetAttrib IN Winscard; INTEGER hCard, LONG dwAttrId,; STRING @pbAttr, LONG @pcbAttrLen DECLARE LONG SCardTransmit IN Winscard; INTEGER hCard, STRING pioSendPci, STRING pbSendBuffer,; LONG cbSendLength, INTEGER pioRecvPci,; STRING @pbRecvBuffer, LONG @pcbRecvLength DECLARE LONG SCardStatus IN Winscard; INTEGER hCard, STRING @szReaderName,; LONG @pcchReaderLen, LONG @pdwState,; LONG @pdwProtocol, STRING @pbAtr,; LONG @pcbAtrLen ENDDEFINE