Vb6 b RIEVE GETNEXTEXTEND状态62

Vb6 b RIEVE GETNEXTEXTEND状态62,vb6,btrieve,Vb6,Btrieve,我无法使GetNextEnded(36)操作正常工作 在英国。以下是返回状态代码62的调用: intStatus = BTRCALL(B_GETNEXTEXTENDED, _ m_byteFilePosBlk, _ m_byteRecordBuffer(0), _ lngDataBufferLen, _

我无法使GetNextEnded(36)操作正常工作 在英国。以下是返回状态代码62的调用:

    intStatus = BTRCALL(B_GETNEXTEXTENDED, _
                        m_byteFilePosBlk, _
                        m_byteRecordBuffer(0), _
                        lngDataBufferLen, _
                        ByVal strKeyBuffer, _
                        intKeyBufferLen, _
                        m_intKeyNum)
在对代码进行搜索后,我发现许多网站都声明 代码表示存储在m_BytereRecordBuffer中的数据缓冲区中的错误。 以下是存储在该变量中的值:

m_byteRecordBuffer(0)    16    'These two bytes indicate the total size of'  
m_byteRecordBuffer(1)    0     'data buffer' 

m_byteRecordBuffer(2)    67    'These two bytes indicate the characters 'UC''
m_byteRecordBuffer(3)    85

m_byteRecordBuffer(4)    0     'These two bytes indicate the maximum reject' 
m_byteRecordBuffer(5)    0     'count, which if set to 0 defaults to 4,095' 

m_byteRecordBuffer(6)    0     'These two bytes indicate the number of terms'
m_byteRecordBuffer(7)    0     'which has been set to zero'

m_byteRecordBuffer(8)    1     'These two bytes indicate the number of' 
m_byteRecordBuffer(9)    0     'records to return'

m_byteRecordBuffer(10)  1     'These two bytes indicate the number of fields'
m_byteRecordBuffer(11)  0     'to extract'

m_byteRecordBuffer(12)  2     'These two bytes indicate the length of the'
m_byteRecordBuffer(13)  0     'field to extract'

m_byteRecordBuffer(14)  1     'These two bytes indicate the field offset'
m_byteRecordBuffer(15)  0

我希望我只是错过了一些简单的事情。非常感谢您的帮助。

在记录缓冲区中,尝试交换UC字符的位置。

将'U'(85)放在位置2,将'C'(67)放在位置3。

如果您没有筛选条件,并且只得到一条记录,您不能使用常规的GETNEXT而不是GetNextEnded吗?在记录缓冲区中,尝试交换UC字符的位置。将“U”(85)放在位置2,将“C”(67)放在位置3。这些术语只是暂时省略,以简化调试过程。谢谢你的建议,我一定试一试。