Private Function PortInUse(ByVal PortNumber As Integer) As _
Boolean
*********************************************
PURPOSE: Determine if a TCP/IP port is in use
EXAMPLE:
If PortInUse(21) Then
MsgBox "The standard FTP port is in use on this machine"
end if
**********************************************
Dim oSocket As Object
Dim bAns As Boolean
On Error Resume Next
Set oSocket = CreateObject("MSWinsock.Winsock.1")
If Err.Number > 0 Then
Err.Raise 30000, , "Could not create winsock object"
Exit Function
End If
Err.Clear
oSocket.LocalPort = PortNumber
oSocket.Listen
if we get this error, it means
port is busy
bAns = Err.Number = 10048
oSocket.Close
Set oSocket = Nothing
PortInUse = bAns
End Function