|
-
August 23rd, 2006, 04:39 PM
#1
URGENT help converting IP from Long to String
I have a list of IP numbers in the Long format, and this function is supposed to convert them to the string format (x.x.x.x)
However the function only converts up to certain value, so is not entirely working. Any help will be really appreciated, this is an urgent project.
Code:
' Inputs: IP Address as a Long Number (no dots)
' Returns: Returns the string representation of an IP Address ("192.168.0.1")
Function CStrIP(ByVal anNewIP As Long) As String
Dim lsResults ' Results To be returned
Dim lnTemp ' Temporary value being parsed
Dim lnIndex ' Position of number being parsed
' If pulling number from an Access Database,
' The variable Type "Long" ranges from -2147483648 To 2147483647
' You will first need To add 2147483648 to the number to parse correctly.
' anNewIP = anNewIP + 2147483648
' Parse highest numbers first
For lnIndex = 3 To 0 Step -1
' Parse the current value For this position
lnTemp = Int(anNewIP / (256 ^ lnIndex))
' Append the number To the final results delimited by a dot
lsResults = lsResults & lnTemp & "."
' Remove the number that we just parsed
anNewIP = anNewIP - (lnTemp * (256 ^ lnIndex))
Next
' Cut off last dot
lsResults = Left(lsResults, Len(lsResults) - 1)
' Return the results
CStrIP = lsResults
End Function
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|