var icData = new ICData();

var deviceResult = crd.CRDICPowerOn();
if (!deviceResult.IsSuccess)
return null;

var result = crd.CRDPBOCInit();
if (!result.IsSuccess)
return null;

var pseResult = crd.CRDPBOCGetPSEAID("1PAY.SYS.DDF01");
if (!pseResult.IsSuccess)
return null;

var selectADFResult = crd.CRDPBOCSelectADF(pseResult.Result.AId);
if (!selectADFResult.IsSuccess)
return null;

var afl = crd.CRDPBOCGetProOption(0, 0);
if (!afl.IsSuccess)
return null;

var readAppdata = crd.CRDPBOCReadAppData(afl.Result);
if (!readAppdata.IsSuccess)
return null;

var readTrackInfo = crd.CRDPBOCGetTrack2Data();
if (!readTrackInfo.IsSuccess)
return null;

var cardNumber = crd.CRDPBOCGetICInfo(BaseInfoType.CardNo);
if (!cardNumber.IsSuccess)
return null;

var initForLoad = crd.CRDPBOCInitForLoad();
if (!initForLoad.IsSuccess)
return null;

var trackInfo = readTrackInfo.Result.Track2Data.Split('=');
icData.凭证代号 = trackInfo.Count() == 2 ? "26" + trackInfo[1].Substring(10, 7) : "";
icData.卡号 = cardNumber.Result.CardNo;
icData.卡号序号 = cardNumber.Result.CardNoIndex;
icData.安全认证信息 = crd.CRDPBOCReadIcTLV(initForLoad.Result.CardNoAndIndex, initForLoad.Result.ARQCRawData, initForLoad.Result.ARQCData);

.....发送报文获取IC卡写卡脚本
根据行内返回脚本能需要调用外部认证(SS_CRD_PBOCExternalAuth)
也可能在执行脚本方法做认证(不需要交易调用外部认证方法)

var exeScirpt = crd.CRDPBOCExecScirpt(response.脚本);
TradeLogger.DebugFormat("ExecScirpt结果:{0}", exeScirpt.Result);
if (!exeScirpt.IsSuccess)
{
writeCardIsSuccess = false;
}
var finishLoad = crd.CRDPBOCFinishLoad();
TradeLogger.DebugFormat("FinishLoad结果:{0}", finishLoad.Result);
if (!finishLoad.IsSuccess)
{
writeCardIsSuccess = false;
}
var close = crd.CRDPBOCClose();
TradeLogger.DebugFormat("PBOCClose结果:{0}", close.Result);
if (!close.IsSuccess)
{
writeCardIsSuccess = false;
}
var powerOff = crd.CRDICPowerOff();
TradeLogger.DebugFormat("PowerOff结果:{0}", powerOff.Result);
if (!powerOff.IsSuccess)
{
writeCardIsSuccess = false;
}

IC卡写卡操作流程的更多相关文章

  1. 门禁 IC卡 ID 卡 RFID 手环 NFC 银行卡 手机模拟门禁

    门禁 IC卡 ID 卡 RFID 手环 NFC 银行卡 手机模拟门禁 原因 最近给公司换了一个门禁. 旧的门禁按键面板已经破了. 不支持我的手环. 按了密码后竟然要按 #. 相关信息 查了资料记录一下 ...

  2. Android NFC近场通信02----读写卡的准备工作

                        Android NFC近场通信02----读写卡的准备工作      因为公司接了一个听上去感觉比較NB的项目.给某油田做派工系统 .并由小女子负责Androi ...

  3. (集成电路卡)ID卡

    IC卡(intergrated Circuit Card,集成电路卡),又称为智能卡,智慧卡,微电路卡,微芯片卡 等等. 它是将一个微电子芯片嵌入符合ISO 7816标准的卡基中,做成卡片形状. IC ...

  4. cpu卡,sam卡原理

    第一部分 CPU基础知识一.为什么用CPU卡IC卡从接口方式上分,可以分为接触式IC卡.非接触式IC卡及复合卡.从器件技术上分,可分为非加密存储卡.加密存储卡及CPU卡.非加密卡没有安全性,可以任意改 ...

  5. 初识CPU卡、SAM卡/CPU卡简介、SAM卡简介 【转】

    初识CPU卡.SAM卡/CPU卡简介.SAM卡简介 IC卡按照接口方式可分为接触式卡.非接触式卡.复合卡:按器件技术可分为非加密存储卡.加密存储卡和CPU卡. 加密存储卡是对持卡人的认证,只有输入正确 ...

  6. 联盛德 HLK-W806 (十三): 运行FatFs读写FAT和exFat格式的SD卡/TF卡

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  7. Keil MDK STM32系列(九) 基于HAL和FatFs的FAT格式SD卡TF卡读写

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  8. 迅雷9、迅雷极速版之迅雷P2P加速:流量吸血鬼?为什么你装了迅雷之后电脑会感觉很卡很卡?

    原文地址:http://www.whosmall.com/post/90 关闭极速版迅雷ThunderPlatform.exe进程 ThunderPlatform.exe目的:利用P2P技术进行用户间 ...

  9. 信用评分卡(A卡/B卡/C卡)的模型简介及开发流程|干货

    https://blog.csdn.net/varyall/article/details/81173326 如今在银行.消费金融公司等各种贷款业务机构,普遍使用信用评分,对客户实行打分制,以期对客户 ...

随机推荐

  1. Entity Framework Power Tools

    http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d

  2. JMS开发(一):基础理论认知

    JMS全称是Java Message Service.其是JavaEE技术规范中的一个重要组成部分,是一种企业消息处理的规范.它的作用就像一个智能交换机,它负责路由分布式应用中各个组件所发出的消息. ...

  3. 学习LINQ,发现一个好的工具。LINQPad!!

    今日学习LINQ,发现一个好的工具.LINQPad!! 此工具的好处在于,不需要在程序内执行,直接只用工具测试.然后代码通过即可,速度快,简洁方便. 可以生成其LINQ查询对应的lambda和SQL语 ...

  4. 剑指OFFER之调整数组顺序使奇数位于偶数前面找(九度OJ1516)

    题目描述: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 输入: 每个输 ...

  5. CSS基础(03)

    1.简单了解浏览器是如何渲染页面和加载页面            浏览器就是通过HTTP 协议与服务器进行通信,取到数据之后进行渲染的过程,如图:    这图是园友的看着挺符合我思路就直接拿来用了,从 ...

  6. Java Nio 多线程网络下载

    --> 默认最多50个线程 同一文件下载失败延迟超过30秒就结束下载 --> 下载5分钟超时时间,假设5分钟内未下载完就结束下载 --> 依赖 commons-httpclient ...

  7. 【转】一个安全测试的CheckList

    转自:http://hi.baidu.com/dontcry/item/90c2bc466558c217886d1075 不登录系统,直接输入登录后的页面的URL是否可以访问: 不登录系统,直接输入下 ...

  8. 【转】web测试内容及工具经典总结

    基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且,随着基于Web的系统变得越来越复杂,一 ...

  9. 用adb pull命令从android系统中读取文件失败的原因及解决办法

    问题:使用adb pull命令从android系统中读取文件失败.显示:Permission denied   原因:是由于文件权限原因引起.       使用ls -l命令查看android系统中的 ...

  10. SON-RPC for Java

    JSON-RPC for Java https://github.com/briandilley/jsonrpc4j#json-rpc-for-java This project aims to pr ...