知识大全 C#用Activex实现Web客户端读取RFID功能

Posted

篇首语:学问之根苦,学问之果甜。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 C#用Activex实现Web客户端读取RFID功能相关的知识,希望对你有一定的参考价值。

C#用Activex实现Web客户端读取RFID功能  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  

  由于要在Web项目中采用RFID读取功能 所以有必要开发Activex 一般情况下开发Activex都采用VC VB等 但对这两块不是很熟悉 所以采用C#编写Activex的方式实现     本文方法参考网络    编写WindowsFromControls    发布WindowsFormControls为Activex    在web中使用该Activex    首先编写windows控件

       如何编写不再详述(注意一个地方 GUID自己用vs工具生成一个 下面会用到 我的 CBD B C F F B B )    重要的类     using System;    using System Runtime InteropServices;    namespace RFIDReader        public class ReadRfid        [DllImport( MasterRD dll )]    private static extern int rf_init_(int port int baud);    [DllImport( MasterRD dll )]    private static extern int rf_request(short icdev byte model ref short TagType);    [DllImport( MasterRD dll )]    private static extern int rf_write(int icdev char _Adr char _Data);    [DllImport( MasterRD dll )]    private static extern int rf_anticoll(short icdev byte bcnt ref byte ppsnr ref byte pRLength);    [DllImport( MasterRD dll )]    private static extern int rf_ClosePort();    public string CardNum        get    return getCardNum();         private string getCardNum()        int post = ; //调用 口   int baud = ;    int i = ;    byte model = ;    byte b = ;    short TagType = ;    byte[] buf = new byte[ ];    try        rf_init_(post baud);    rf_request( model ref TagType);    rf_anticoll( ref buf [ ] ref b );    string s = ;    for (i = ; i < b ; i++)        s = s + System Convert ToString(long Parse(buf [i] ToString()) ) ToUpper();        rf_ClosePort();    if (s == )    throw (new Exception());     return s ;        catch (Exception)            return ;                view sourceprint?    using System;    using System Collections Generic;    using System Linq;    using System Text;    using System Runtime InteropServices;    namespace RFIDReader   

    [ComImport GuidAttribute( <SPAN > CBD B C F F B B </SPAN><SPAN > </SPAN> )]   [InterfaceTypeAttribute(ComInterfaceType InterfaceIsIUnknown)]    public interface IObjectSafety        [PreserveSig]    void GetInterfacceSafyOptions(    int riid     out int pdwSupportedOptions     out int pdwEnabledOptions);    [PreserveSig]    void SetInterfaceSafetyOptions(    int riid     int dwOptionsSetMask     int dwEnabledOptions);            using System;using System Collections Generic;using System ComponentModel;    using System Drawing;    using System Data;    using System Linq;    using System Text;    using System Windows Forms;    using System Runtime InteropServices;  using CJ;    namespace RFIDReader    [Guid( CBD B C F F B B ) ProgId( RFIDReader Reader ) ComVisible(true)]    public partial class Reader : UserControl IObjectSafety        public Reader()        InitializeComponent();        #region IObjectSafety 成员    public void GetInterfacceSafyOptions(int riid out int pdwSupportedOptions out int pdwEnabledOptions)        pdwSupportedOptions = ;    pdwEnabledOptions = ;        public void SetInterfaceSafetyOptions(int riid int dwOptionsSetMask int dwEnabledOptions)        throw new NotImplementedException();        #endregion    private void timer _Tick(object sender EventArgs e)        ReadRfid rfid=new ReadRfid();    string str = rfid CardNum;    if (str != )        textBox Text = str; GetInfo();            public int TimerSpan        get return timer Interval;     set timer Interval = value;             public string CardNum        get return textBox Text;         private void GetInfo()        this label Text = cccc ;                为了能够在所有客户端ie上显示控件 要在程序的AssemblyInfo cs里添加如下语句    [assembly: AllowPartiallyTrustedCallers()]    下一步 右键该项目 属性 生成 将为互操作注册 打上勾勾

       然后编译 如果没有问题 那么测试下 应该可以读取RFID的ID到文本框了     制作安装程序    跟普通的制作安装程序一样 新建一个安装程序 然后删掉里面的文件夹     鼠标右键空白区域 》添加 》项目输出 》选择主输出

cha138/Article/program/net/201311/13644

相关参考

知识大全 用C#读取sina天气预报到wap页面

用C#读取sina天气预报到wap页面  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  <%@Re

知识大全 使用C#读取dbf行情文件

使用C#读取dbf行情文件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  由于历史的原因我国的上

知识大全 c#通过网线读取三菱PLC数据

c#通过网线读取三菱PLC数据  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  publicsta

知识大全 在C#中如何读取配置文件[1]

在C#中如何读取配置文件[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  配置文件概述  应

知识大全 在C#中如何读取配置文件[2]

在C#中如何读取配置文件[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  不同的type不但

知识大全 在C#中如何读取配置文件[3]

在C#中如何读取配置文件[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!通过上面的代码我们可以

知识大全 C#对数据库的读取,写,更新和删除

C#对数据库的读取,写,更新和删除  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ●读取数据其中

知识大全 C#来创建和读取XML文档

C#来创建和读取XML文档  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  扩展标记语言XML(e

知识大全 C#如何读取和创建INI文件

C#如何读取和创建INI文件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在做项目过程中有时需

知识大全 c#文件的创建、读取及写入

  在c#中运用到操作流时首先要加入以下两个命名空间  usingSystemIO;  usingSystemCollections;  我总结了以下几种方式来进行IO操作很简便但却很实用  目录的创