德卡Z90读卡器读取社保卡,德卡Z90读卡器CSharp示例程序源码
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                德卡Z90读卡器读取社保卡,德卡Z90读卡器CSharp示例程序源码
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                前言,最近學習調(diào)用 醫(yī)保卡業(yè)務(wù),使用德卡讀卡器,主要就是調(diào)用一個DLL,動態(tài)庫文件. 借著自學的機會把心得體會都記錄下來,方便感興趣的小伙伴學習與討論。 內(nèi)容均系原創(chuàng),歡迎大家轉(zhuǎn)載分享,但轉(zhuǎn)載的同時別忘了注明作者和原文鏈接哦。本文內(nèi)容和圖片如果有侵犯您的權(quán)利,請聯(lián)系yisheng163@qq.com。
一,準備工作:
先到德卡官網(wǎng)下載相關(guān)資料,下載動態(tài)庫。
http://www.decard.com/download/downloadcategoryid=10&isMode=false.html
下載 SSCardDriver.dll 動態(tài)庫。
讀卡器準備:找到一臺德卡Z9讀卡器用來測試,Z9與Z90基本通用,不影響測試。
先拆開底座,把授權(quán)蕊片裝入卡槽二。
USB插頭,插入電腦USB口,任意插USB,不需要記住USB端口號,下一步讀卡也不需要設(shè)置USB端口號。
二,C#讀卡類
/// <summary>
    /// 德卡讀卡器專用類
    /// mail:yisheng163@qq.com
    /// </summary>
    public class SSCard
    {
        /// <summary>
        /// 德卡讀卡器專用讀卡方法,需要將SSCardDriver.dll放在程序同一目錄下
        /// </summary>
        /// <param name="iType">卡的類型,定義如下:1-接觸式操作卡;2-非接觸式操作卡;3-自動尋卡,接觸式操作卡優(yōu)先;4-自動尋卡,非接觸式操作卡優(yōu)先。</param>
        /// <param name="outInfo">該輸出參數(shù)為讀出的社保卡基本信息各數(shù)據(jù)項,依次為:發(fā)卡地區(qū)行政區(qū)劃代碼(卡識別碼前6位)、社會保障號碼、卡號、卡識別碼、姓名、卡復(fù)位信息(僅取歷史字節(jié))、規(guī)范版本、發(fā)卡日期、卡有效期、終端機編號、終端設(shè)備號。各數(shù)據(jù)項之間以“|”分割,且最后一個數(shù)據(jù)項以“|”結(jié)尾。</param>
        /// <returns></returns>
        [DllImport("SSCardDriver.dll", EntryPoint = "iReadCardBas")]
        public static extern int iReadCardBas(int iType, StringBuilder outInfo);
        /// <summary>
        /// 讀取社會保障號和姓名
        /// </summary>
        /// <returns></returns>
        public static string GetIDCode(ref bool CodeState, ref string ErrDesc, ref string IName, ref string ICard)
        {
            string ReStr="";
            StringBuilder myStrB=new StringBuilder(256);
            iReadCardBas(1, myStrB);
            if (myStrB != null && myStrB.ToString() != "" && myStrB.ToString().IndexOf("|") >= 0)
            {
                //讀取成功
                string[] myStringList = myStrB.ToString().Split('|');
                if (myStringList != null && myStringList.Length > 0)
                {
                    ICard = myStringList[1];
                    IName = myStringList[4];
                    CodeState = true;
                    ErrDesc = "";                    
                }
                else
                {
                    CodeState = false;
                    ErrDesc = myStrB.ToString();
                    return "";
                }
            }
            else
            {
                    CodeState = false;
                    ErrDesc = myStrB.ToString();
                    return "";
            }
            return ReStr;
        }
    }
三,調(diào)用測試。
StringBuilder myStrB = new StringBuilder(2048);
            PT.BLL.DLL.SSCard.iReadCardBas(1, myStrB);
            if (myStrB != null && myStrB.ToString() != "" && myStrB.ToString().IndexOf("|") >= 0)
            {
                textBox1.Text = "
" + myStrB.ToString();
            }
讀卡成功。
四,示例源碼:
德卡Z90讀卡器CSharp示例程序.rar
德卡Z90讀卡器CSharp示例程序源碼.rar
總結(jié)
以上是生活随笔為你收集整理的德卡Z90读卡器读取社保卡,德卡Z90读卡器CSharp示例程序源码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 5.Appium的pc端实现手机端页面
 - 下一篇: 原生twig模板引擎详解(安装使用)