Domino 9 und frühere Versionen > Entwicklung

Verfügbare Server per Script ermitteln

<< < (2/2)

ata:
... ich denke so werd ich es machen, die Serverdokumente und Verbindungsdokumente checken un das jeweilige NAB öffnen...

danke erst mal...

ata

eknori (retired):
Hier noch in Ergänzung eine kleine Funktion, um einen NotesServer anzupingen. Wenn der Server online ist, gibt die Funktion TRUE zurück ansonsten FALSE

Declare Function NSPingServer Lib "nnotes.dll" ( Byval pServerName As String, pdwIndex As Long, phList As Long) As Integer
Declare Function OSLoadString Lib "nlib.dll" (Byval hModule&, Byval Status%, Byval retBuffer$, Byval BufferLength%) As Integer


Function IsServerAvailable(ServerName$)As Variant
   
   Dim l&,m&,Status%
   
   Status%=NSPingServer(ServerName$, m&,l&)
   If status%= 0 Then
      IsServerAvailable=True
   Else
      IsServerAvailable=False
   End If
   
End Function


Sub Click(Source As Button)
   Msgbox IsServerAvailable ("DEWVX01/WITTE/DE")
End Sub

eknori

eknori (retired):
Und noch ne nette Sache: Gibt dir die prozentuale Verfügbarkeit wie beim Befehl sh server zurück

Const Button = "Server Latency"
Const APIModule = "NNOTES" ' Windows

Declare Function NSFGetServerLatency Lib APIModule Alias "NSFGetServerLatency" _
( Byval S As String, Byval T As Long, A As Long, B As Long, V As Integer) As Integer
Declare Function NSPingServer Lib APIModule Alias "NSPingServer" _
( Byval S As String, L As Long, pC As Long) As Integer
Declare Function OSLoadString Lib APIModule Alias "OSLoadString" _
( Byval H As Long, Byval S As Integer, Byval B As String, Byval nB As Integer) As Integer

Sub Click(Source As Button)
s$ = Trim$(Inputbox$("Server name:", Button, ""))
If s$ = "" Then Exit Sub

v% = NSPingServer(s$, a&, 0)
If Not v% = 0 Then
APIError v%
Exit Sub
End If

v% = NSFGetServerLatency(s$, 30000, tC&, tS&, sV%)
If Not v% = 0 Then
APIError v%
Exit Sub
End If

Messagebox "Server: " & s$ _
& Chr$(10) & "Availability: " & Cstr(a&) & "%" _
& Chr$(10) & "Outbound: " & Cstr(tC&) & " ms" _
& Chr$(10) & "Inbound: " & Cstr(tS&) & " ms" _
& Chr$(10) & "Version: " & Cstr(sV%) _
, 64, Button
End Sub

Sub APIError(V As Integer)
m$ = String$(1024, " ")
OSLoadString 0, V And &H3FFF, m$, 1024
p% = Instr(m$, Chr$(0))
If Not p% = 0 Then m$ = Left$(m$, p% - 1)
If m$ = "" Or m$ = "No error" Then m$ = "Unknown error (&H" & Hex$(v%) & ")"
Messagebox m$, 16, Button
End Sub

eknori

Fedaykin:
Hallo zusammen

Kleiner Nachtrag, vielleicht hilft es ja mal jemanden der so was sucht und damit ich es wieder finde.  ;D

http://openntf.org/Projects/codebin/codebin.nsf/CodeBySubType/735160BB77457CF688256BDC000CC19C

Und sollte der Link mal nicht mehr funktionieren kleiner Tip am besten nach NSGetServerList googeln.

Gruss
Remo

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln