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.
Func Groupwise($Nutzernamenliste)
Local $i, $Passwort
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
If $j = 2 Then
$Passwort = $StdPasw2
MsgBox(1,"Passwort","Initialisiere Passwort 2")
EndIf
If $j = 3 Then
$Passwort = $StdPasw3
MsgBox(1,"Passwort","Initialisiere Passwort 3")
EndIf
;~ If $j <> 1 Or $j <> 2 Or $j <> 3 Then
;~ MsgBox(1,"Fehler","Fehler bei der Passwortinitialisierung")
;~ EndIf
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)
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
;~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
P.S Auch für weitere Programmiertipps bin ich offen, da meine Quelltexte noch ziemlich wild aussehen.