微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

silverlight实现跨浏览器通过读卡器与外部硬件进行通讯方法

  有的时候我们不得不调用一些其他公司给我们的动态链接库,一种方法是用activex技术,但是activex技术很有局限性,它只能实现在IE浏览器下面通过调用activex跟读卡器进行通讯,另外一种方法就是通过silverlight这种跨浏览器的技术实现跨浏览器跟读卡器进行通讯,实现这一过程,我们需要做以下几点:1、将厂家给我们的动态链接库封装成com组件(例如activex)-这个东西是需要我们安装到客户机上面的,将这些动态链接库封装完成之后,我们可以利用silverlight技术里面的oob模式调用外部com组件的方法实现调用你编写的com,调用com组件可以直接调用里面的方法调用方法代码如下(在这里我只贴出了部分代码):

 

private void button1_Click(object sender, RoutedEventArgs e)         {             if (!AutomationFactory.IsAvailable)             {                 MessageBox.Show("这个程序需要silverlight组件");             }             else             {                 using (dynamic shell = AutomationFactory.CreateObject("KMSActivex"))                 {                     int sl = shell.FindDongle();                     if (sl > 0)                     {                         string flag = shell.ReadDongle();                         MessageBox.Show(flag);                     }                     else                     {                         MessageBox.Show("没有发现dongle");                     }                 }             }         }
上面是添加一个按钮,然后点击按钮调用外部com activex组件,调用组件里面的函数的简单功能,如果需要实现其他功能的话,以此类推就可以了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐