AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
19.10.21 - 10:25:28
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Domino 9 und frühere Versionen
| |-+  Administration & Userprobleme (Moderatoren: Axel, eknori, Hoshee, Thomas Schulte)
| | |-+  "Geschedul"te Konsolenkommandos?
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: "Geschedul"te Konsolenkommandos?  (Gelesen 2309 mal)
_Markus_
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 21


R6 finally GOLD!


« am: 24.10.02 - 09:38:00 »

Morgens,

um meinem GroupShield Problem Herr zu werden würde ich gerne in 20 Minuten Intervallen ein paar Konsolen-Kommandos

(tell router quit
tell GSDOAScan quit
load GSDOAScan
load router)

ausführen lassen ... hat jemand eine Idee, wie man so
etwas realisieren könnte?

Thanks in advance for any help!   Grin
Gespeichert

Yuck! Who replaced the Linux on my Domino server with Windoze 2k?
eknori
@Notes Preisträger
Moderator
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 11563


« Antworten #1 am: 24.10.02 - 09:45:45 »

Dazu kannst du ein paar NotesAPI Calls und einen periodischen Agentenverwenden:

Den folgenden Code packst du in den DECLARATION Teil deines Agenten:

Declare Function NSFRemoteConsole Lib "NNotes.dll" Alias "NSFRemoteConsole" (Byval Server As String, Byval cmd As String, ret As Long) As Long
Declare Function OSLockObject Lib "NNotes.dll" Alias "OSLockObject" (Byval Handle) As String
Declare Sub OSUnlockObject Lib "NNotes.dll" Alias "OSUnlockObject" (Byval Handle)
Declare Sub OSMemFree Lib "NNotes.dll" Alias "OSMemFree" (Byval Handle)

Class remoteConsole
   Private IsError As Variant
   Private rc As Integer
   Private hBuffer As Long
   Private Server As String
   Private Command As String
   Private Result As String
   
   Sub New(inpServer As String)
      Dim server As New NotesSession
      If inpServer = "" Then
         Me.IsError = True
      Else
         Me.server=inpServer
         Me.IsError = False
      End If
   End Sub
   
   Function Execute(inpCommand As String) As String
      If Me.Server = "" Then
         Exit Function
      End If
      If inpCommand = "" Then
         Me.execute="You must specify a command"
         Me.iserror = True
         Exit Function
      Else
         Me.command = inpCommand
      End If
      
      Me.rc = NSFRemoteConsole(Me.server, Me.command, hBuffer)
      If Me.rc <> 0 Then
         Me.iserror = True
         Me.result="Error returned " & _
         " from console [" & Cstr(rc) & "]"
      Else
         Me.result = OSLockObject(hBuffer)
         Call OSUnlockObject(hBuffer)
         Call OSMemFree(hBuffer)
         Me.Iserror = False
      End If
      Me.execute = Me.result
   End Function
End Class


Dann brauchst du nur noch deine Kommandos über den INITIALIZE Event deines Agenten aufzurufen

Sub Initialize
Dim exec As String
Dim dummy As Variant
Dim remConsole As New RemoteConsole ( "DeinServer" )
Exec = "tell router quit"

dummy =  remConsole.Execute(exec)
'...
'entsprechend dann für die anderen Befehle

end sub


eknori   
Gespeichert
_Markus_
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 21


R6 finally GOLD!


« Antworten #2 am: 24.10.02 - 09:49:15 »

 Cheesy Cheesy Cheesy Cheesy Cheesy

Muchas Gracias!

Funktioniert gnadenlos gut  Cool
« Letzte Änderung: 24.10.02 - 09:59:15 von _Markus_ » Gespeichert

Yuck! Who replaced the Linux on my Domino server with Windoze 2k?
byte
Aktives Mitglied
***
Offline Offline

Geschlecht: Männlich
Beiträge: 158


Pillenausgabe geschwänzt ^^


« Antworten #3 am: 04.11.02 - 23:45:39 »

DU HELD !!!!

symbolisch  knutsch *eg*

 Cheesy Cheesy Cheesy Cheesy Cheesy Cheesy Cheesy
Gespeichert

egal ist auch wurschd ^^
Hardy
Aktives Mitglied
***
Offline Offline

Geschlecht: Männlich
Beiträge: 137


Wer will sucht Wege , wer nicht will sucht Gründe


WWW
« Antworten #4 am: 27.02.03 - 13:16:09 »

Hi,

kann man hier eigentlich einen Dialog einbauen, um die entsprechenden Eingaben für den Agenten zu machen ?

nicht einzelne Fenster für Server und Befehl ( hab ich schon), sondern alle Angeben in einem Dialogfenster und dann an den Agenten übergeben.

Idee ?

hier mein Code für einzelne Eingabefenster

Sub Initialize
   Dim exec As String
   Dim dummy As Variant
   
   Dim workspace As New NotesUIWorkspace
   
   srv$ = workspace.Prompt(PROMPT_OKCANCELEDIT, _
   "Server Name", "Bitte geben Sie den vollqualifizierten Notes Namen ein: (Server/Hallo/DE) ", "", prompt_list)
   
   'Cancel, oder keine Eingabe führt zu Abbruch
   If (srv$ = "") Then Goto Fehler
   
   comm$ = workspace.Prompt(PROMPT_OKCANCELEDIT, _
   "Datenbankname", "Bitte geben Sie den zu ändernden Datenbanknamen ein: (mail\Kunze.nsf) ", "", "")
   
        'Cancel, oder keine Eingabe führt zu Abbruch
   If (comm$ = "") Then Goto Fehler
   
   Dim remConsole As New RemoteConsole ( srv$ )
   
   Exec = "lo mkacl " & comm$ &  " ""Admins"" manager -f d -u pg"          ' Welches Kommando ?    
   If exec = "" Then
      Exit Sub
   End If
   
   remConsole.Execute(exec) ' Kommando ausführen
   On Error Goto Fehler2
   Exit Sub
   
Fehler:
   strMessage = "Abbruch durch Benutzer bzw. keine Eingabe"
   lBoxType = MB_OK+MB_ICONSTOP
   Messagebox strMessage, lBoxType, "Info"
   Exit Sub
   
Fehler2:
   iErr = Err()
   strMessage = "Server nicht gefunden oder anderes Problem"
   lBoxType = MB_OK+MB_ICONSTOP
   Messagebox strMessage, lBoxType, "Info"
   Exit Sub
   
   Exit Sub
End Sub

Hardy
Gespeichert

______________________________
Mit Software ist es wie mit Bananen !
Beides reift beim Kunden !!
______________________________
28 x 6.5.5 im Cluster auf WinSrv 2003

Clients:
6.000 User (Win XP Prof.) 6.5.4
eknori
@Notes Preisträger
Moderator
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 11563


« Antworten #5 am: 27.02.03 - 13:29:29 »

macht das denn bei periodischen Agenten Sinn ?
Gespeichert
Hardy
Aktives Mitglied
***
Offline Offline

Geschlecht: Männlich
Beiträge: 137


Wer will sucht Wege , wer nicht will sucht Gründe


WWW
« Antworten #6 am: 27.02.03 - 14:51:12 »

 
mir geht es mehr darum den mkacl Befehl einfacher ausführen zu können, ohne sich die ganzen optionen wieder ansehen zu müssen

Also einfach klick hier und da und der entspr. Befehl mit den eingetragenen Optionen wird an der Serverkonsole ausgeführt.

Hardy
Gespeichert

______________________________
Mit Software ist es wie mit Bananen !
Beides reift beim Kunden !!
______________________________
28 x 6.5.5 im Cluster auf WinSrv 2003

Clients:
6.000 User (Win XP Prof.) 6.5.4
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: