Neue Version siehe Post_1
Beiträge von sugus
-
-
-
-
-
-
Danke für eure Denkanstösse und der gute Link der mir weiter geholfen hat.
Konnte es jetzt umsetzen und funktioniert.
AutoIt
Alles anzeigenFunc _SucheStart() ;AD Suche $ReadTexBox = GUICtrlRead($ADuser) ; Text aus TextBox in Variable speichern If GUICtrlRead($ADuser) = "" Then ;Prüfen ob TextBox leer ist MsgBox(0,"Info..", "Bitte einen Text eingeben") Else _GUICtrlListView_DeleteAllItems($idListview) ;Alle alten Einträge in ListView Löschen Global $sOU = "" Global $sLDAPFilter = "(&(objectCategory=Person)(ANR=" & $ReadTexBox & "))" ;Use ANR (Ambiguous Name Resolution). Global $sDataToRetrieve = "DisplayName,initials,mail,telephoneNumber,Mobile,physicalDeliveryOfficeName" ;sAMAccountName,department,distinguishedName,Title _AD_Open() Global $aUserIDs = _AD_GetObjectsInOU($sOU, $sLDAPFilter, 2, $sDataToRetrieve, "displayName") If @error Then $sLDAPFilter = "(&(objectCategory=Person)(initials=" & $ReadTexBox & "))" $aUserIDs = _AD_GetObjectsInOU($sOU, $sLDAPFilter, 2, $sDataToRetrieve, "displayName") If @error Then $sLDAPFilter = "(&(objectCategory=Person)(Mobile=*" & $ReadTexBox & "))" $aUserIDs = _AD_GetObjectsInOU($sOU, $sLDAPFilter, 2, $sDataToRetrieve, "displayName") if @error Then $sLDAPFilter = "(&(objectCategory=Person)(telephoneNumber=*" & $ReadTexBox & "))" $aUserIDs = _AD_GetObjectsInOU($sOU, $sLDAPFilter, 2, $sDataToRetrieve, "displayName") if @error Then MsgBox(64, "Telefonbuch...", "Keine Übereinstimmung gefunden") EndIf EndIf EndIf EndIf _AD_Close()
-
Den benutzten LDAP-Filter ist der gleiche wie oben im CODE.
Da ich beim Namens & Büro suche das Kürzel angezeigt bekomme, dachte ich sollte es ja auch für das Kürzel gehen.
Im AD Register unter Allgemein / Büro wird die Tel.-Nr. Kurzwahlnummer hinterlegt und wenn ich nach Kürzwahl nummer suche wird mir auch das Kürzel angezeigt.
@error Fehler nach Kürzel suche:
3 - No records returned from Active Directory. $sFilter didn't return a record Ich habe es auch schon mit _AD_GetObjectAttribute von deiner UDF versucht. Aber mit initials findet gehts auch nicht.
Vermutlich mache ich etwas falsch oder verstehe die ganze LDAP funktion nicht
Danke & Gruss
-
Ich arbeit schon mit deiner UDF und finde die sehr gut.
Wenn mit dem Namen gesucht wird funktioniert ales bestenst, aber wenn ich nach dem Kürzel suche wird nichts gefunden.
Es handelt sich hier um ein Telefonbuch für die Mitarbeiter.
Hier noch ein kleiner Auschnid von dem Code:
AutoItGlobal $sOU = "" Global $sLDAPFilter = "(&(objectCategory=Person)(ANR=" & GUICtrlRead($ADuser) & "))" ;Use ANR (Ambiguous Name Resolution). Global $sDataToRetrieve = "DisplayName,initials,mail,telephoneNumber,Mobile,physicalDeliveryOfficeName" ;sAMAccountName,department,distinguishedName,Title _AD_Open() Global $aUserIDs = _AD_GetObjectsInOU($sOU, $sLDAPFilter, 2, $sDataToRetrieve, "displayName") If @error Then MsgBox(64, "Active Directory Functions", "No objects found") EndIf _AD_Close()
-
Hallo zusammen
Ist es möglich im AD nur nach Attribut initials zu suchen wenn man den Namen vom User nicht weis?
Gruss Roland
-
Entschuldigung olfibits das ich mich erst jetzt melde.
Danke für deinen Tipp. Schaue es an.
-
Kleine Änderung siehe Post_1
-
Ich konnte nicht widerstehen und habe noch ein Würfelspiel erstellt.
GUI Oberfläche von YATZY
Jeder Würfel kann mit einem Klick auf das Würfel Image gehalten werden.
Das heisst beim nächsten Wurf werden die Würfel nicht mit gewürfelt.
Man kann zu jederzeit das Halten wieder herausnehmen.
Sobald man die beste Kombination erspielt hat, wird mit einem Klick auf das Input die Werte übernommen.
Nach jedem Durchgang (3 Würfe) muss ein Input ausgewählt werden, auch wenn keine Kombination möglich ist.
Es wird Automatisch 0 eingetragen wenn keine Kombination passt.
Bei Spielende wird der Würfel Button als "Neues Spiel" angezeigt.
Nach dem drücken wird automatisch der erste Wurf getätigt.
Viel Spass!
-
Mann muss den Würfel Button im laufenden Spiel nur einmal drücken.
Nach Auswahl der Buttons 1 bis 12 wird automatisch weiter gewürfelt bis "GAME OVER" erscheint, danach wird der Button wieder aktiviert.
Wenn die MsgBox erscheint für die nächste Runde und man die bestätigt, wird auch wieder automatisch weiter gewürfelt.
-
Das mit dem JOKER kann ich verstehen . Jetzt läuft alles nur noch über einen Button.
Gruss Roland
-
Habe versucht die Anmerkungen einzubinden.
Neue Version im Post_1
-
Hallo zusammen,
Habe mal versucht ein Würfelspiel mit Autoit zu erstellen. Die Idee kam mir als ich das Spiel von alpines (Number Strike) spielte.
Einige von euch kenne eventuell das Spiel schon (Shut the Box, Klappenspiel, Klappbrett oder Klappbox)
Gui
Bsp. Bei einem Wurf von 3 + 5 kann der Button 3 oder 5 oder die Summe beider Würfel 8 gedrückt werden.
Es kann immer nur ein Button ausgewählt werden.
Wenn ein" JOKER" angezeigt wird, kann man über das Dropdown den ensprechenden Würfel auswählen.Um es ein bischen spannender zumachen?? Wird bei jedem Button der gedrückt wird eine Zufahlszahl von 10 bis 100 in 10ner schritten vergeben.
Edit 04.06.2018 _V2:
Der "JOKER" Würfel und die "Pfeile" können jetzt deaktiviert werden.
Beim Würfeln habe ich es so gelöst, dass der Würfel Button das erste mal gedrückt werden muss und nach Asuwahl
der Buttons 1 bis 12 dann automatisch weiter würfelt
Edit 04.06.2018 _V3:
Der New Game Button wurde entfernt.
Nach dem Spielende muss nur noch der Würfel Button gedrückt werden um ein Neus Spiel zu starten.
-
Sorry für die späte Rückmeldung, bin erst jetzt von den Ferien zurück gekommen und hatte keine Zeit nach zuschauen.
@Racer
Wenn ich wieder etwas Zeit habe, werde ich dein Vorschlag mit dem Fortschrittsbalken mal anschauen.
@Peter S. Taler
Beim Fehler muss ich mal prüfen, woran das liegen könnte. Hat vermutlich ein Zusammenhang mit dem leeren Ordner und Array.
Vermutlich hätte ich das auch mit der Autoit Kopierroutine machen können. Müsste mal in der Hilfe Datei nachschauen was alles möglich währe.
Bei Robocopy ist schon alles dabei und brauche dafür nur eine Programmierzeile.
-
Hallo zusammen
Es würde mich freuen, wenn Ihr mal das Skript Testen könntet. Nur wer Lust und Laune hat.
Ich Arbeite viel im gleichen Ordner und mache gelegentlich ein Backup von dem Ordner.
Da ich nicht immer weis was im Kopie Ordner aktuell ist, vergleiche ich mit dem Skript zwei Ordner miteinander.
In einem ListView wird die Abweichung vom Original zur Kopie aufgelistet und sehe welche Dateien noch nicht gesichert wurden.
Mit dem Button Robocopy werden alle fehlenden Dateien in der Kopie ergänzt.
Robocopy ist so eingestellt das keine Datein gelöscht werden, es wird nur kopiert.
Habe versucht die Fehlerquellen abzufangen wenn man die Quelle mit dem Ziel versehentlich vertauscht.
Bin mir aber nicht sicher ob die Lösung von mir korrekt ist.
Der Syntax Code wird nicht sauber angezeigt. Vermutlich habe ich zu lange Zeilen.
AutoIt: OvDe.au3
Alles anzeigen#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <FindFiles.au3> #include <GuiListView.au3> #include <ListViewConstants.au3> #include <GuiStatusBar.au3> #include <StaticConstants.au3> #include <Array.au3> #include <GuiImageList.au3> _Main() Func _Main() ;Initialize variables Global $dir ;Variable Folder Pfad Global $exStyles = BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES) ;ListViews Stile Global $Pfad_1, $Pfad_2 ;Ordner auswahl in Variable speichern Global $idListview Global $StatusBar1 Global $FileList_1, $FileList_2 ; Variablen für Ordner durchsuchen "_FileListToArrayRec" Folder 1 & Folder 2 Global $iIndex Global $hImage ; Variable Array vergleichen Global $Labinfo_1, $Labinfo_2 ;Ausgewählte Pfade in Label anzeigen Global $Copy_Btn ; Button für Robocopy Local $Icon1Pfad = @ScriptDir & "\Icons\Punkt2.ico" Local $Icon2Pfad = @ScriptDir & "\Icons\Punkt3.ico" ;------------------Create window $hGui = GUICreate("Ordner Vergleichen auf Dateiebene", 600, 745, -1, -1) ;------------------Create an Open Pfad 1 Button $Dir1_Btn = GUICtrlCreateButton("Ordner 1 auswählen (Original)", 27, 10, 250, 25) GUICtrlSetFont($Dir1_Btn, 11, "", "", "") ;font size ;------------------Create an Open Pfad 2 Button $Dir2_Btn = GUICtrlCreateButton("Ordner 2 auswählen (Kopie)", 27, 45, 250, 25) GUICtrlSetFont($Dir2_Btn, 11, "", "", "") ;font size GUICtrlSetState(-1, $GUI_DISABLE) ;Button Deaktivieren ;------------------Create an Open Folder Ordner 1 Button $FolderOpen_Btn = GUICtrlCreateButton("Dateipfad öffnen (Original)", 320, 10, 250, 25) GUICtrlSetFont($FolderOpen_Btn, 11, "", "", "") ;font size ;------------------Create an Copy_Btn Button $Copy_Btn = GUICtrlCreateButton("Mit ROBOCOPY abgleichen", 320, 45, 250, 25) GUICtrlSetFont($Copy_Btn, 11, "", "", "") ;font size GUICtrlSetState($Copy_Btn, $GUI_DISABLE) ;Button Deaktivieren ;------------------Create an Label-Pfad Ordner 1 $Labpfad_1 = GUICtrlCreateLabel("Ordner 1: ", 27, 82, 550, 20) GUICtrlSetFont(-1, 10, "", "", "") ;font size GUICtrlSetColor($Labpfad_1, 0x0000FF) ;font farbe ;------------------Create an Label-Pfad Ordner 2 $Labpfad_2 = GUICtrlCreateLabel("Ordner 2: ", 27, 105, 550, 20) GUICtrlSetFont(-1, 10, "", "", "") ;font size GUICtrlSetColor($Labpfad_2, 0xFF0000) ;font farbe ;------------------Create an ListView $idListview = GUICtrlCreateListView("", 25, 150, 550, 560) ;,$LVS_SORTDESCENDING) _GUICtrlListView_AddColumn($idListview, "", 20) ;Spalte 1 _GUICtrlListView_AddColumn($idListview, "Dateien", 200) ;Spalte 2 _GUICtrlListView_AddColumn($idListview, "Pfad (Original)", 550) ;Spalte 3 _GUICtrlListView_SetExtendedListViewStyle($idListview, BitOR($exStyles, $LVS_EX_GRIDLINES)) ;listView Stile ;------------------Create an StatusBar $StatusBar1 = _GUICtrlStatusBar_Create($hGui) ;Statusbar generieren _GUICtrlStatusBar_SetMinHeight($StatusBar1, 20) ;Statusbar Höhe _GUICtrlStatusBar_SetParts($StatusBar1, 2, 250) ;Statusbar aufteilen _GUICtrlStatusBar_SetText($StatusBar1, " Bereit ") ;Text in Statusbar links _GUICtrlStatusBar_SetText($StatusBar1, " Dateien in Ordner 1: " & " Dateien in Ordner 2: ", 1) ;Text in Statusbar rechts ;------------------Create an Icon-Control $Icon1 = GUICtrlCreateIcon($Icon1Pfad, -1, 25, 125, 20, 20) $Icon2 = GUICtrlCreateIcon($Icon2Pfad, -1, 250, 125, 20, 20) ;------------------Create an Label Icon1-Control GUICtrlCreateLabel("In beiden Ordner vorhanden", 50, 127, 190, 20) GUICtrlSetFont(-1, 10, "", "", "") ;font size ;------------------Create an Label Icon2-Control GUICtrlCreateLabel("In Ordner 2 nicht vorhanden", 275, 127, 190, 20) GUICtrlSetFont(-1, 10, "", "", "") ;font size GUISetState(@SW_SHOW) ;Show window/Make the window visible ; Lädt die Bilder $hImage = _GUIImageList_Create(16, 16, 5, 3) ;ImageList generieren Breite / Höhe / 5 = 32Bit / 1 - verwendet eine Maske & 2 - Bilder werden gespiegelt _GUIImageList_AddIcon($hImage, $Icon1Pfad) ;Gruen / Fügt ein Icon der Imagelist hinzu _GUIImageList_AddIcon($hImage, $Icon2Pfad); Rot / Fügt ein Icon der Imagelist hinzu While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE GUIDelete() ;Destroy the GUI including the controls _GUICtrlListView_UnRegisterSortCallBack($idListview);Deregistriert die Sortier-Callback Funktion Exit Case $Dir1_Btn ;Ordner_1 Button _GUICtrlListView_DeleteAllItems($idListview) ;Alle einträge in ListView Löschen _GUICtrlStatusBar_SetText($StatusBar1, "Bearbeitung gestartet") ;Text in Statusbar links $dir = FileSelectFolder("Ordner auswählen","") ;Ordner auswahl starten $Pfad_1 = $dir & "\" ;Ausgewählten Pfad in eine Variable speichern If $dir = "" Then GUICtrlSetState($Dir2_Btn, $GUI_DISABLE) ;Button Deaktivieren Else GUICtrlSetState($Dir2_Btn, $GUI_ENABLE) ;Button Aktivieren GUICtrlSetData($Labpfad_1, "Ordner_1: " & $Pfad_1) ;Pfad an Label übergeben GUICtrlSetTip($Labpfad_1, GUICtrlRead($Labpfad_1, 1)) EndIf Case $Dir2_Btn ; Ordner_2 Button _GUICtrlListView_DeleteAllItems($idListview) ;Alle einträge in ListView Löschen $dir = FileSelectFolder("Ordner auswählen","") ;Ordner auswahl starten $Pfad_2 = $dir & "\" ; Ausgewählten Pfad in eine Variable speichern If $dir = "" Then Else GUICtrlSetData($Labpfad_2, "Ordner_2: " & $Pfad_2) ;;Pfad an Label übergeben GUICtrlSetTip($Labpfad_2, GUICtrlRead($Labpfad_2, 1)) _Ordner1Array() ;In ausgewählten Ordner nach Dateien suchen EndIf Case $FolderOpen_Btn ;Button Pfad öffnen $LvAuswahl = _GUICtrlListView_GetSelectedIndices($idListview, True) ;Ausgewählte Zeile kompletten Text auslesen If $LvAuswahl[0] = "" Then ;Wenn keine auswahl vorhanden in ListView MsgBox(0,"Info....", "Es wurde keine Zeile augewählt!") Else $aLVPfad = _GUICtrlListView_GetItemText($idListView, $LvAuswahl[1], 2) ; Kompletter Text aus Spalte 3 ermitteln $result = StringInStr($aLVPfad, "\", 0, -1) ; erstes zeichen "\" von rechts suchen in Text & Anzahl von Zeichen in Variable speichern $sOpenPfad = StringLeft ($aLVPfad, $result) ; Gibt eine Anzahl von Zeichen, links ausgehend von dem String zurück ShellExecute($sOpenPfad) ;Oeffnet den Pfad von ausgewähler Zeile in ListView EndIf Case $Copy_Btn #Region --- CodeWizard generated code Start --- ;MsgBox features: Title=Yes, Text=Yes, Buttons=Yes and No, Default Button=Second, Icon=Warning If Not IsDeclared("iMsgBoxAnswer") Then Local $iMsgBoxAnswer $iMsgBoxAnswer = MsgBox(324,"Robocopy...","Robocopy vergleicht Ordner_1 mit Ordner_2" & @CRLF & _ "und kopiert fehlende Dateien nach Ordner_2!" & @CRLF & @CRLF & _ "Robocopy ist so eingestellt, dass Dateien kopiert werden" & @CRLF & _ "aber keine Dateien gelöscht werden!" & @CRLF & @CRLF & _ "Eingesellte Parameter Robocopy:" & @CRLF & _ "/E /R:10 /W:1 /TEE /V /X /LOG: @ScriptDir & \RoboBackupLOG.txt" & @CRLF & @CRLF & _ "/E = Kopiert Unterverzeichnisse" & @CRLF & _ "/R:10 = Anzahl Wiederholungsversuchen" & @CRLF & _ "/W:1 = Wartezeit zwischen Wiederholungsversuchen in sek." & @CRLF & _ "/TEE = Daten im Konsolenfenster in % anzeigen" & @CRLF & _ "/V = Erstelt ein ausfuehrliches Log-File mit (errors)" & @CRLF & _ "/X = Alle Daten werden im Log-File eingetragen" & @CRLF & @CRLF & _ "Bitte Start & Ziel Ordner überprüfen!" & @CRLF & @CRLF & _ "Start Ordner: " & $Pfad_1 & @CRLF & "Ziel Ordner: " & $Pfad_2) Select Case $iMsgBoxAnswer = 6 ;Yes Button Click $sP1 = StringTrimRight ($Pfad_1, 1) ;Ordner_1 Pfad Trimmen 1_Zeichen von rechts "\" für Robocopy $sP2 = StringTrimRight ($Pfad_2, 1) ;Ordner_2 Pfad Trimmen 1_Zeichen von rechts "\" für Robocopy $source = '"' & $sP1 & '"' ;Pfad Ordner_1 $dest = '"' & $sP2 & '"' ;Pfad Ordner_2 $log = @ScriptDir & "\RoboBackupLOG.txt" ;Log File erstellen ;~ MsgBox(0,"Kopieren", $source & " " & $dest) RunWait(@ComSpec & " /c ROBOCOPY " & $source & " " & $dest & " /E /R:10 /W:1 /TEE /V /X /LOG:" & '"' & $log & '"') ;Run RoboCopy Sleep(2000) ; Warte 2 Sek. _GUICtrlListView_BeginUpdate($idListView);ListView Aktuallisierung Stoppen ProgressOn("Bitte warten...", "Ordner 2 neu einlesen", "") ;Progress Start _Ordner2Array() ;Ordner_2 nochmals in die Array schreiben damit der Ordner Vergleich neu ausgefürt werden kann GUICtrlSetState($Copy_Btn, $GUI_DISABLE) ;Button Deaktivieren Case $iMsgBoxAnswer = 7 ;No EndSelect #EndRegion --- CodeWizard generated code End --- ;~ Case $idListview;Spalten sortieren ;~ _GUICtrlListView_RegisterSortCallBack($idListview);Registriert die "Simple Sort callback" Funktion ;~ _GUICtrlListView_SortItems($idListview, GUICtrlGetState($idListview));Startet die Sortier-Callback Funktion ListView EndSwitch WEnd EndFunc ;==>_Main Func _Vergleich() ;Ordner vergleichen (in zwei Arrays) Local $z = 0 ;Wird benötigt für ListView Icon For $i = 1 To UBound($FileList_1) - 1 ;Anzahl einträge in Array ermitteln (Ordner_1) $iIndex = _ArraySearch($FileList_2, $FileList_1 [$i], 0, 0, 0, 0, 0, 0) ;In Array vom Ordner_1 in Ordner_2 vergleichen ;~ MsgBox(0,"",UBound ($FileList_1) -1) If @error = 6 Then ;Wird benötigt für ListView Icon. Bei jedem "@error = 6" wird die Variable um 1 erhöt & ein Rotes Icon gesetzt $z = $z + 1 ;Wird benötigt für ListView Icon _GUICtrlListView_SetImageList($idListview, $hImage, 1) ;Weist eine Imagelist einem Control zu _GUICtrlListView_SetItem($idListview, " " & $i, $i - 1, 0, 1) ;Rotes Icon setzen in Spalte 1 wenn Datei in der Arrays von Ordner_2 nicht vorhanden ist _GUICtrlStatusBar_SetText($StatusBar1, " Fehlende Datei(en) in Kopie: " & $z) ;Text in Statubar links ;~ ConsoleWrite("Zeile " & $iIndex & "=" & $FileList_1 [$i] & @crlf) Else _GUICtrlListView_SetImageList($idListview, $hImage, 1) ;Weist eine Imagelist einem Control zu _GUICtrlListView_SetItem($idListview, " " & $i, $i - 1, 0, 0) ;Grünes Icon setzen in Spalte 1 wenn Datei in beiden Arrays vorkommt (Ordner_1 & Ordner_2) EndIf ProgressSet((100/$FileList_1[0]) * $i, $i & " von " & $FileList_1[0] & " Dateien werden untersucht", "Vergleichen der Ordner") ;Progress aktuallisieren Next _GUICtrlListView_EndUpdate($idListView); ListView Aktuallisierung Starten Sleep(1000) ;Warten 1 Sek. ProgressOff() ;Progress auschalten If $FileList_1[0] = $z Then ;Wenn source(Ordner 1) = $z ($z = Fehlende Dateien in destinatoin(Ordner 2) MsgBox(32,"Info...","Im Destinations(Ordner 2) sind keine Dateien vorhanden die mit Source(Ordner 1) übereinstimmen!" & @CRLF & @CRLF & @CRLF & _ "Bitte überprüfen Sie ob die richtigen Ordner Pfade ausgewält wurden!") Else If $z = 0 Then _GUICtrlStatusBar_SetText($StatusBar1, " Fehlende Datei(en) in Kopie: " & $z) ;Text in Statusbar links MsgBox(0,"Info...","Dateien von Original zur Kopie sind identisch.") GUICtrlSetState($Copy_Btn, $GUI_DISABLE) ;Button Deaktivieren Else MsgBox(0,"Info...","In Ordner_2 (Kopie) wurden Fehlende Datei(en) gefunden: " & $z) GUICtrlSetState($Copy_Btn, $GUI_ENABLE) ;Button aktivieren EndIf EndIf EndFunc
AutoIt: FileFind.au3
Alles anzeigen#Include <File.au3> Func _Ordner1Array() ProgressOn("Bitte warten...", "Dateien werden gesucht", "") ;Progress Start $FileList_1 =_FileListToArrayRec($Pfad_1, "*", 1, 1) ;Alle Datein suchen von Ordner_1 & in Array schreiben ;~ _ArrayDisplay($FileList_1, "1D Anzeige") If @Error = 1 Then ;Wenn keine Datein gefunden ProgressOff() ;Progress ausschalten MsgBox (0,"","Keine Dateien gefunden in Ordner 1!") Else _GUICtrlListView_BeginUpdate($idListView);ListView Aktuallisierung Stoppen For $i = 1 to UBound($FileList_1) -1 ;Anzahl Index einträge in Array von Ordner_1 ProgressSet((100/$FileList_1[0]) * $i, $i & " von " & $FileList_1[0], "Dateien von Ordner 1 einlesen") ;Progrssbar aktuallisieren $search = FileFindFirstFile($Pfad_1 & $FileList_1[$i]) ;Erzeugt ein Suchhandle $file = FileFindNextFile($search) ;Gibt den nächsten Dateinamen $PfadKomplet = $Pfad_1 & $FileList_1[$i] ;Kompletter Pfad ermitteln _GUICtrlListView_AddItem($idListview, "", 0) ;Spalte1 Icon _GUICtrlListView_AddSubItem($idListview, $i -1, $file, 1) ;Spalte2 Datei _GUICtrlListView_AddSubItem($idListview, $i -1, $PfadKomplet , 2) ;Spalte3 Pfad Next FileClose($search) EndIf _Ordner2Array() EndFunc Func _Ordner2Array() $FileList_2 =_FileListToArrayRec($Pfad_2, "*", 1, 1) ;Alle Datein suchen von Ordner_2 & in Array schreiben ;~ _ArrayDisplay($FileList_2, "1D Anzeige") If @Error = 1 Then ;Wenn keine Datein gefunden ProgressOff() ;Progress ausschalten MsgBox (0,"","Keine Dateien gefunden in Ordner 2!") Else For $i = 1 to UBound($FileList_2) -1 ;Anzahl Index einträge in Array von Ordner_2 ProgressSet((100/$FileList_2[0]) * $i, $i & " von " & $FileList_2[0], "Dateien von Ordner 2 einlesen") ;Progrssbar aktuallisieren $search = FileFindFirstFile($Pfad_2 & $FileList_2[$i]) ;Erzeugt ein Suchhandle $file = FileFindNextFile($search) ;Gibt den nächsten Dateinamen Next _GUICtrlStatusBar_SetText($StatusBar1, " Dateien in Ordner 1: " & $FileList_1[0] & " Dateien in Ordner 2: " & $FileList_2[0], 1) ;Text Statusbar rechts FileClose($search) EndIf If $FileList_1[0] < $FileList_2[0] Then ;Wenn in der destination(Ordner 2) mehr Dateien vorhanden sind als im source(Ordner 1) ProgressOff() ;Progress ausschalten MsgBox(32,"Info...","Im Destination(Ordner 2) sind mehr Dateien vorhanden als im Source(Ordner 1)!" & @CRLF & @CRLF & @CRLF & _ "Bitte überprüfen Sie ob die richtigen Ordner Pfade ausgewält wurden!") Else _Vergleich() ;Vergleich starten der beiden Arrays von Ordner_1 & Ordner_2 EndIf EndFunc
Mir ist bewusst, dass ich auch alles mit Robocopy direkt machen könnte. Auf jeden fall wahr das für mich eine interessante Erfahrung.
Trotzdem wäre es für mich hilfreich was ich besser machen könnte oder was ich eventuell falsch gemacht habe im Skript.
Ich versuche das meiste immer selber zu lösen anhand der Hilfe von Autoit,
ob wohl für mich in der Hilfe nicht immer alles verständlich ist.
Mir fehlt auch die Erfahrung, da ich nur sporadisch mit Autoit programmiere.
Ich bitte euch, ein Auge zuzudrücken bei meiner Rechtschreibung, ist nicht so meine Stärke.
Gruss aus der Schweiz
-
Nach etlichem suchen und Probieren konnte ich es selber Lösen.
Mit diesem Satz hat dann alles funktioniert.
_IEAction($o_form, "click")
Spoiler anzeigen
#include <IE.au3>
Local $oIE = _IEcreate ("https://www.acronis.com/de-de/my/box/?s=1")
; Nun warten wir bis die Webseite vollständig geladen ist:
_IELoadWait($oIE,0)
Local $user_name = _IEGetObjByName ($oIE, "Email")
Local $password = _IEGetObjByName ($oIE, "Pwd")
Local $o_form = _IEGetObjByName($oIE, "Registred")
_IEAction($o_form, "click")
Sleep(1500)
_IEFormElementSetValue ($user_name, "myname@Muster.com",0)
_IEFormElementSetValue ($password, "1234567",0)
-
Ja habe ich auch schon Probiert. hat leider auch nicht funktioniert.
Mit der error abfrage bekomme ich immer die 0 / 4 oder 7 zurück.