在这里遇到了一个小问题,我不知道哪里有错误的代码
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) 收到错误,错误消息错误序列化
有人遇到过这个错误并解决它吗?
约瑟夫 我对 VB 不是很好,但据我所知,您正在声明一个新的 DPFP。模板,然后将其序列化到内存流中。你为什么要这么做?
假设你正在注册或验证 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[]。
我认为,鉴于您只是创建了模板(空白),那么当您尝试序列化它时会引发异常。