Probleme mit einem Loginscript

  • Hallo,
    ich habe zurzeit Probleme mit einem Loginscript. Dieses Speichert ob das Standartpasswort richtig, falsch oder der Nutzer nicht vorhanden ist.
    Das blöde ist nur, dass das Programm nur beim ersten Login leicht anders reagiert. Also hab ich zwei Schleifen, eine die einmal läuft eine andere die den Rest übernimmt. Die erste Schleife speichert Passwort stimmt und Passwort falsch aber nicht Nutzername nicht vorhanden. Die zweite Schleife speichert nur Nutzer nicht vorhanden. Die WinExcist fragt nach den Titeln. Diese hab ich auch mehrmals überprüft. Leider bin ich im Moment echt ratlos. Ich poste mal den Codeteil.

    [autoit]

    Func Groupwise($Nutzernamenliste)

    Local $i, $Passwort

    [/autoit][autoit][/autoit][autoit]

    For $j = 1 To $Passwortanzahl Step 1 ;~Austesten aller eingegebenen Passwörter
    $Spaltenposition = $j + 1
    ;~Passwortzuordnung
    If $j = 1 Then
    $Passwort = $StdPasw1
    MsgBox(1,"Passwort","Initialisiere Passwort 1")
    EndIf

    [/autoit][autoit][/autoit][autoit]

    If $j = 2 Then
    $Passwort = $StdPasw2
    MsgBox(1,"Passwort","Initialisiere Passwort 2")
    EndIf

    [/autoit][autoit][/autoit][autoit]

    If $j = 3 Then
    $Passwort = $StdPasw3
    MsgBox(1,"Passwort","Initialisiere Passwort 3")
    EndIf

    [/autoit][autoit][/autoit][autoit]

    ;~ If $j <> 1 Or $j <> 2 Or $j <> 3 Then
    ;~ MsgBox(1,"Fehler","Fehler bei der Passwortinitialisierung")
    ;~ EndIf

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    For $i = 1 To 1 Step 1

    ShellExecute("C:\Novell\GroupWise\grpwise.exe","/@u-" &$Nutzernamenliste[$i][1])
    WinWaitActive("GroupWise-Passwort")
    Send($Passwort)
    Send("{ENTER}")
    Sleep(1000)
    ;~Passwort funktioniert
    If WinExists("Novell GroupWise - Mailbox") Then
    $OXLSCID = _ExcelBookOpen(@ScriptDir & "\" & $loginliste)
    If @error = 1 Or @error = 2 Then
    MsgBox(1,"Fehler","Fehler beim öffnen der Exceldatei" & @CRLF & "_ExcelBookOpen Errorcode: "& @error)
    EndIf
    WinWaitActive("Microsoft Excel - ")
    _ExcelWriteCell($OXLSCID, $Passwort, $i , $Spaltenposition)
    _ExcelBookClose($OXLSCID)
    WinClose("Novell GroupWise - Mailbox")
    EndIf

    ;~Passwort funktioniert nicht
    If WinExists("Dialogfeld") Then
    WinClose("Dialogfeld")
    WinClose("Novell GroupWise Startup")
    Sleep(1000)
    WinClose("Novell GroupWise Startup")
    EndIf

    Sleep(1000)
    If WinExists("Novell GroupWise Startup") Then
    MsgBox(1,"Nutzername nicht verfügbar","Nutzername nicht verfügbar")
    $OXLSCID = _ExcelBookOpen(@ScriptDir & "\" & $loginliste)

    [/autoit][autoit][/autoit][autoit]

    If @error = 1 Or @error = 2 Then
    MsgBox(1,"Fehler","Fehler beim öffnen der Exceldatei" & @CRLF & "_ExcelBookOpen Errorcode: "& @error)
    EndIf
    WinWaitActive("Microsoft Excel - ")
    _ExcelWriteCell($OXLSCID, "Nutzer nicht verfügbar", $i , $Spaltenposition)
    _ExcelBookClose($OXLSCID)
    WinClose("Novell GroupWise - Mailbox")
    WinClose("Dialogfeld")
    WinClose("Novell GroupWise Startup")
    WinClose("Novell GroupWise Startup")
    Sleep(2500)
    EndIf
    Next

    [/autoit][autoit][/autoit][autoit]

    ;~Schleife zum testen aller Nutzernamen
    For $i = 2 To $Zeilengroesse Step 1

    ShellExecute("C:\Novell\GroupWise\grpwise.exe","/@u-" &$Nutzernamenliste[$i][1])
    WinWaitActive("Novell GroupWise Startup")
    Send("{TAB}")
    Send($Passwort)
    Send("{ENTER}")
    Sleep(1000)
    If WinExists("Novell GroupWise - Mailbox") Then
    $OXLSCID = _ExcelBookOpen(@ScriptDir & "\" & $loginliste)
    If @error = 1 Or @error = 2 Then
    MsgBox(1,"Fehler","Fehler beim öffnen der Exceldatei" & @CRLF & "_ExcelBookOpen Errorcode: "& @error)
    EndIf
    WinWaitActive("Microsoft Excel - ")
    _ExcelWriteCell($OXLSCID, $Passwort, $i , $Spaltenposition)
    _ExcelBookClose($OXLSCID)
    WinClose("Novell GroupWise - Mailbox")
    EndIf

    If WinExists("Dialogfeld") Then
    WinClose("Dialogfeld")
    WinClose("Novell GroupWise Startup")
    WinClose("Novell GroupWise Startup")
    EndIf

    If WinExists("Novell GroupWise Startup") Then
    $OXLSCID = _ExcelBookOpen(@ScriptDir & "\" & $loginliste)
    If @error = 1 Or @error = 2 Then
    MsgBox(1,"Fehler","Fehler beim öffnen der Exceldatei" & @CRLF & "_ExcelBookOpen Errorcode: "& @error)
    EndIf
    WinWaitActive("Microsoft Excel - ")
    _ExcelWriteCell($OXLSCID, "Nutzer nicht verfügbar", $i , $Spaltenposition)
    _ExcelBookClose($OXLSCID)
    WinClose("Novell GroupWise - Mailbox")
    WinClose("Dialogfeld")
    WinClose("Novell GroupWise Startup")
    WinClose("Novell GroupWise Startup")
    Sleep(2500)
    EndIf
    Next
    Next
    EndFunc

    [/autoit]

    P.S Auch für weitere Programmiertipps bin ich offen, da meine Quelltexte noch ziemlich wild aussehen.

  • Also Zeile 28 und 72 kannste entfernen, das ist Schwachsinn.

    Läuft dein Script nicht oder wie?