0

在这里遇到一个小问题,不知道代码哪里错了

    Private Sub SimpleButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SimpleButton1.Click
    Dim str As New MemoryStream
    Dim Serializetemplate As New DPFP.Template
    Serializetemplate.Serialize(str)
    Dim serializedTemplate As Byte() = str.ToArray()

    'save to database
    opencon1()
    Dim cmd As MySql.Data.MySqlClient.MySqlCommand
    cmd = New MySql.Data.MySqlClient.MySqlCommand
    cmd.Parameters.AddWithValue("?imagedata", serializedTemplate)
    cmd.Parameters.AddWithValue("?userid", txtEmpid.Text)
    cmd.CommandText = "UPDATE master SET fp1=?imagedata WHERE userid=?userid"
    cmd.CommandType = CommandType.Text
    cmd.Connection = con1
    cmd.ExecuteNonQuery()
End Sub

我在Serializetemplate.Serialize(str)处收到错误消息,错误消息为 Bad Serialization

有人遇到过这个错误并解决它吗?

4

1 回答 1

1

Joseph 我不太擅长 VB,但据我所知,您正在声明一个新的 DPFP.Template,然后将其序列化到您的内存流中。你为什么做这个?

鉴于您正在注册或验证 SDK,将为您提供事件处理程序上的模板

private void Enrolled(object Control, int Finger, DPFP.Template Template, ref DPFP.Gui.EventHandlerStatus Status)
{
   if (Status == DPFP.Gui.EventHandlerStatus.Success)
   {
      // Here you can use the template as  Template.Bytes
   }
}

模板已经序列化为 byte[]。

我认为,鉴于您只是创建模板(空白),那么当您尝试序列化它时会引发异常。

于 2012-04-26T01:47:37.637 回答