我在 ID 卡数据库中有一些头像,我想在我用 VB 2008 编写的程序中显示这些头像。以下代码基于 Microsoft 的支持文章,可以在此处找到,具体来自步骤 '11' .
aiuQuery.CommandText = "select a.ImageData From Images a, Cardholders b WHERE b.UserText6 = '" & _
empID & "' And a.CardholderID = b.CardholderID"
aiuReader = aiuQuery.ExecuteReader
If aiuReader.Read Then
Dim bytBLOBData(aiuReader.GetBytes(1, 0, Nothing, 0, Integer.MaxValue) - 1) As Byte
aiuReader.GetBytes(1, 0, bytBLOBData, 0, bytBLOBData.Length)
Dim stmBLOBData As New MemoryStream(bytBLOBData)
pbHeadShot.Image = Image.FromStream(stmBLOBData)
End If
aiuReader.Close()
'If' 块内的第一行 (Dim bytBLOBData...) 生成一个错误,声称“索引超出了数组的范围”。
SQL 在程序外部测试时是正确的。
有关此错误的原因可能是什么的任何建议?一个更好的方法来解决这个问题?