CPU卡发送一条指令的调用函数
int icc_instruction(unsigned char *ins_buff,unsigned char cmd_len,unsigned char *ret_buf);
功能描述:向CPU卡发送一条指令,同时获得该指令返回值
入口参数:
ins_buff--------指令缓冲区;
cmd_len --------指令长度;
ret_buf --------响应缓冲区,第一个字节存放响应数据的长度;
返回值:
-1----------通迅失败或设置密码验证未通过;
其它 -------CPU卡回送的状态码;
 --------------------------------------------------------------------------------
const int arrarySize = 100;
byte [] cmdbuff = new byte[arrarySize];
byte [] retbuff = new byte[arrarySize];cmdbuff[0] = 0x0;                       //nad
cmdbuff[1] = 0x40;                      //pcb
cmdbuff[2] = 0x29;                      //length 3-31
cmdbuff[3] = 0x80;                      //CLA create MF
cmdbuff[4] = 0xE0;                      //INS
cmdbuff[5] = 00;                        //Create MF 安装密钥
cmdbuff[6] = 00;                        //正在建立
cmdbuff[7] = 0x18;                      //LC
cmdbuff[8] = 0xFF;                      //8字节传输密钥start
cmdbuff[9] = 0xFF;
cmdbuff[10] = 0xFF;
cmdbuff[11] = 0xFF;
cmdbuff[12] = 0xFF;
cmdbuff[13] = 0xFF;
cmdbuff[14] = 0xFF;
cmdbuff[15] = 0xFF;                      //8字节传输密钥end
cmdbuff[16] = 0xFF;                      //权限,在MF下建立文件
cmdbuff[17] = 0xF;                       //目录文件的短文件标识符
cmdbuff[18] = 0x31;                      //1PAY.SYS.DDF01,EF名称
cmdbuff[19] = 0x50;
cmdbuff[20] = 0x41;
cmdbuff[21] = 0x59;
cmdbuff[22] = 0x2E;
cmdbuff[23] = 0x53;
cmdbuff[24] = 0x59;
cmdbuff[25] = 0x53;
cmdbuff[26] = 0x2E;
cmdbuff[27] = 0x44;
cmdbuff[28] = 0x44;
cmdbuff[29] = 0x46;
cmdbuff[30] = 0x30;
cmdbuff[31] = 0x31;
cmdbuff[32] = 0x0;for(int i=0;i<32;i++)
{
        cmdbuff[32] = (byte)(cmdbuff[i] ^ cmdbuff[32]);
}return icc_instruction(cmdbuff,33,retbuff);
------------------------------------------------现在的问题是如果得到CPU卡回送的状态码retbuff的返回值?