Private Sub MyButton_Click()
Dim Context As ADLER32_Context
Dim Checksum As ADLER32_HexDigest
Dim MyStrData As String
MyStrData = "Hello World!"
Dim nLen As Long
nLen = Len(MyStrData)
'Convert the string to byte array
Dim MyBinData() As Byte
ReDim MyBinData(1 To nLen)
For i = 1 To nLen
MyBinData(i) = Asc(Mid(MyStrData, i, 1))
Next i
'Initialize the context
ADLER32_Init Context
'Update the context with first part
Dim nFirstLen As Long
nFirstLen = nLen / 3
ADLER32_Update Context, MyBinData(1), nFirstLen
'Update the context with second part
ADLER32_Update Context, MyBinData(nFirstLen + 1), nLen - nFirstLen
'Get the checksum
ADLER32_FinalHex Context, Checksum, True
'Show the hexadecimal representation of the checksum
MsgBox QHASH_ASCIItoBSTR(Checksum.Value(0))
End Sub
|