Hi,

First the CINT etc commands will not work for this.

I have the following value 2A000000412DF21B in string displayed here as hex. It should convert to 3026418950686503451 but instead I'm gettting 3026418950686503424.

I take the string and convert it to bits 0010101000000000000000000000000001000001001011011111001000011011 then using a simple function I loop through and calculate the value.

I think I'm hitting the max of the double, I'm not sure but I can't figure out how to convert what I have in string to the number above.

Code:
Dim dbA As Double, dbB As Double, intX As Integer
        Try
            dbA = 1 : dbB = 0
            For intX = Len(strB) To 1 Step -1
                dbB = dbB + (Mid(strB, intX, 1) * dbA)
                dbA = dbA * 2
            Next
        Catch ex As Exception
              msgbox ex.message.tostring
        End Try
        Return dbB
Any advise should be appreciated