Foxtable(狐表)用户栏目专家坐堂 → [求助] 读卡器调用


  共有4806人关注过本帖平板打印复制链接

主题:[求助] 读卡器调用

美女呀,离线,留言给我吧!
zhangyan123_123
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:33 积分:336 威望:0 精华:0 注册:2014/3/25 14:02:00
[求助] 读卡器调用  发帖心情 Post By:2014/4/21 11:08:00 [只看该作者]

我想作个会议签到程序,我公司有职工卡,我有职工物理卡号与员工信息对应表,如何在foxtable 下调用,请位高手指导一下:

dll 文件名 eLabel.all

在 .net 下是这样定义并调用的

 

 [DllImport( "eLabel.DLL" )]

 private static extern int InitReader();//初始化读卡器

 [DllImport( "eLabel.DLL" )]

 private static extern int UnlinkReader();//断开读卡器

 [DllImport( "eLabel.DLL" )]

 private static extern int GetMOCardSn( StringBuilder sn, StringBuilder err );  //读工作证序列号

 

在foxtable 全局代码中写:

<DllImport("eLabel.DLL")>  Public Function  InitReader() As Integer
End Function

<DllImport("eLabel.DLL")> Public  Function UnlinkReader() As Integer
End Function

<DllImport("eLabel.DLL")> Public Function GetMOCardSn(ByVal sn As String,ByVal err As String) As Integer
End Function

---------------------

新建一个读卡form.form 下有三个button

--------------

button1,读卡器链接,click事件代码 :

Dim n As Integer = InitReader()
If n=0 Then
   Messagebox.Show("链接成功")
Else
    Messagebox.Show("链接失败")
End If

------------

button3,关闭form(同时断开读卡器), click事件代码 :
Dim c As Integer = UnlinkReader()
Forms("w_read").close()

---------

经测试,button1,button3 运行正常


在button2,读卡,报错,button2  click事件代码 :

Dim sn As String
Dim err As String
Dim c As Integer = GetMOCardSn( sn , err )
 Messagebox.Show("22")

 

执行button1后,执行button2(执行读卡器链接后,执行读卡)

提示:     错误代码位置:窗口,w_read,Button2,Click

            System.AccessViolationException: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
            在 UserCode.GetM0CardSn(String sn, String err)
            在 UserCode.Click_2dcb6b29(ControlEventArgs e)

 

那位专家指指招,谢谢,我邮箱 zhangyan@bjbpp.com


 


 回到顶部
总数 13 1 2 下一页