有的时候我们不得不调用一些其他公司给我们的动态链接库,一种方法是用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] 举报,一经查实,本站将立刻删除。