ActiveX: SLPing
(Filnamn: SLPING.OCX)
SLPing är en ActiveX-komponent som kan användas för att testa om
en dator vid ett specificerat IP-nummer eller domännamn existerar. Kontrollen
mäter också tiden det tar att skicka ut en förfrågan och ett erhålla ett
svar. Tiden erhålls i millisekunder. SLPing använder protokollet
ICMP (Internet Control Message Protocol) när den utför en ping-operation.
Storleken på datapaketet som skickas under ping-operationen är 32 bytes.
Datatyperna nedan är angivna enligt VB 6.0 standard. I VB.NET ska Integer
ersättas med Short (16 bitar) och Long ersättas med Integer (32 bitar).
Egenskaper
Namn |
Datatyp |
Beskrivning |
HostNotFound |
Boolean |
Sätts till True om ett IP-nummer
eller domännamn inte kan hittas. Denna egenskap kan endast läsas.
. |
ResponseTime |
Long |
Efter att metoden
Ping anropats innehåller denna egenskap
svarstiden i millisekunder. Denna egenskap kan endast läsas.
. |
Timeout |
Long |
Specificerar tiden i sekunder som
kontrollen ska vänta på ett svar innan den avbryter.
. |
TimeoutOccurred |
Boolean |
Sätts till True om timeout
inträffade vid senaste anrop av metoden Ping.
Denna egenskap kan endast läsas.
. |
Metoder
Ping (Address As String) As Boolean
Utför en ping-test på ett
IP-nummer eller domännamn som specificeras av parametern
Address. Existerar adressen och inga
fel inträffat returnerar funktionen True. Tiden i millisekunder
för ett svar kan läsas från egenskapen ResponseTime.
Om adressen inte kan hittas,
det hinner bli timeout eller ett fel inträffar returnerar funktionen
False och metoden GetLastError
kan användas för att erhålla en felkod. Om inte addressen existerar
sätts även egenskapen HostNotFound
till True. Och egenskapen TimeoutOccurred
sätts till True om timeout inträffade (dvs inget svar erhölls
inom den tidsram som specificerats av egenskapen
Timeout).
GetLastError
() As Long
Returnerar senast inträffade
felet i kontrollen.
|
Exempel
SLPing1.Timeout = 5
' Sätt timeout-värde till 5 sekunder
If SLPing1.Ping("www.samlogic.com") Then
RespTime = SLPing1.ResponseTime
' Erhåll svarstid i millisekunder
ErrNr = PING_OK
Else
If SLPing1.HostNotFound Then
' Har denna egenskap värdet True hittades inte domännamnet
ErrNr = PING_HOSTNOTFOUND
ElseIf SLPing1.TimeoutOccurred Then
' Har denna egenskap värdet True blev det timeout
ErrNr = PING_TIMEOUT
Else
ErrNr = SLPing1.GetLastError()
' Erhåll felkod
End If
End If
|