资源简介

程序:C#非接触IC卡M1卡读写调试程序 适用机型:明华HRF-35,URF-R330 程序语言:C# 作者:王龙 www.sskee.com 讯思科软件出品 该程序以读写明华HRF-35,URF-R330为例,向学习非接触式IC编程的朋友们提供编程源码范例, 通过学习,深入了解.net C#调用mwrf32.dll,进一步了解M1非接触IC卡的内部数据结构。 本程序在Microsoft Visual Studio 2010环境下编写。 问与答: 1、运行程序时,提示“不安全代码只会在使用 /unsafe 编译的情况下出现”。 解决:打开项目属性(在窗口右边的解决方案资源管理器里,鼠标右键项目名称card,弹出菜单,点击属性) 在属性对话框里找到“生成”页面,常规项里勾选“允许不安全代码”,保存。 2、运行程序时,提示“对 PInvoke 函数“card!card.urf::rf_init”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。” 解决:打开项目属性(在窗口右边的解决方案资源管理器里,鼠标右键项目名称card,弹出菜单,点击属性) 在属性对话框里找到“应用程序”页面,将目标框架选择为“。NET Frameword 3.5 Client Profile”,保存。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;


//程序:C#非接触IC卡M1卡读写调试程序
//适用机型:明华HRF-35,URF-R330
//程序语言: .NET C#
//作者:王龙  
//讯思科软件出品 www.sskee.com

namespace card
{
    public partial class Form1 : Form
    {
        int icdev = 0;

        public Form1()
        {
            InitializeComponent();
            label7.Text = ““;
            label8.Text = ““;
            label3.Text = “说明:写入的参数最多16个字节,汉字不超过8个汉字。\r\nM1卡分16个扇区,每个扇区4个版块,0扇区0版块不可写,已固化,\r\n其它扇区0、1、2版块可写入参数“;
        }


        private void button1_Click(object sender EventArgs e)
        {
            //边接设备,初始化
            string str = ““;
            if (icdev == 0) { icdev = urf.rf_init(); } else { return; }
            //icdev = urf.rf_init();
            if (icdev < 0)
            {
                MessageBox.Show(icdev + “端口初始化失败请检查接口线是否连接正确。“ “错误提示“ MessageBoxButtons.OK MessageBoxIcon.Information);
            }
            else
            {
                unsafe
                {
                    int st;
                    Byte[] version = new Byte[18];
                    //char version= new char();                  
                    st = urf.rf_get_status(icdev version);

                    if (st == 1)

                        label1.Text = “error“;

                    else
                        //str = new string(version);
                        str = Encoding.Default.GetString(version);
                    urf.rf_beep(icdev 5);//提示音
                    label1.Text = icdev + “设备已连接,标识号:“ + str.ToString();

                }
            }
        }

        private void button2_Click(object sender EventArgs e)
        {
            //断开连接,初始化
            int id = urf.rf_exit(icdev);
            icdev = 0;
            if (icdev < 0)
                MessageBox.Show(“端口初始化失败请检查接口线是否连接正确。“ “错误提示“ MessageBoxButtons.OK MessageBoxIcon.Information);
            else
            { MessageBox.Show(“已断开连接。“ “错误提示“ MessageBoxButtons.OK MessageBoxIcon.Information);

            label1.Text = “已断开连接“ + icdev;
            }
        }



        private void button3_Click(object sender EventArgs e)
        {
            unsafe
            {
                int st;
                st = urf.rf_beep(icdev 30);
            }
        }

        private void button4_Click(object sender EventArgs e)
        {
            readcard();
        }

        private void button5_Click(object sender EventArgs e)
        {
            int st;
            if (comboBox1.Text == ““ | comboBox1.Text == ““)
            {
                MessageBox.Show(“请选择扇区和块!“);
                return;
            }
            int sq = Convert.ToInt32(comboBox1.Text);
            int bk = Convert.ToInt32(comboBox2.Te

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1009  2012-12-14 22:29  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\说明.txt

     文件       1364  2012-12-14 21:49  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Properties\AssemblyInfo.cs

     文件       5612  2012-12-14 21:49  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Properties\Resources.resx

     文件       2844  2012-12-14 22:28  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Properties\Resources.Designer.cs

     文件        249  2012-12-14 21:49  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Properties\Settings.settings

     文件       1100  2012-12-14 22:28  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Properties\Settings.Designer.cs

     文件      10341  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Form1.cs

     文件      15967  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Form1.Designer.cs

     文件        686  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\Program.cs

     文件       3822  2012-12-14 22:29  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\card.csproj

     文件        490  2010-03-17 22:39  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\card.vshost.exe.manifest

     文件      11608  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\card.vshost.exe

     文件      17920  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\card.exe

     文件      32256  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\card.pdb

     文件     114688  2009-05-15 09:23  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\mwrf32.dll

     文件        130  2012-12-14 22:28  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\card.exe.config

     文件        130  2012-12-14 22:28  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\bin\Debug\card.vshost.exe.config

     文件       4608  2012-12-14 22:28  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\TempPE\Properties.Resources.Designer.cs.dll

     文件       6648  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        180  2012-12-14 23:09  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\card.Form1.resources

     文件        180  2012-12-14 22:29  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\card.Properties.Resources.resources

     文件        776  2012-12-14 23:09  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\GenerateResource.read.1.tlog

     文件        782  2012-12-14 23:09  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\GenerateResource.write.1.tlog

     文件      17920  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\card.exe

     文件       1784  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\card.csproj.FileListAbsolute.txt

     文件       2836  2012-12-14 22:28  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache

     文件          2  2012-12-14 23:09  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\GenerateResource-ResGen.read.1.tlog

     文件          2  2012-12-14 23:09  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\GenerateResource-ResGen.write.1.tlog

     文件      32256  2012-12-14 23:12  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\obj\x86\Debug\card.pdb

     文件        849  2012-12-14 21:49  C#非接触IC卡M1卡读写调试源代码(适用机型明华HRF-35,URF-R330)\card\card.sln

............此处省略16个文件信息

评论

共有 条评论