Problem beim Vergleichen von 2 Arrays

  • Ich muss für ein Skript immer wieder den Inhalt 2er Arrays vergleicen, und die 2. Array an die erste Anpassen. Ich will aber nicht immer die 2. Array löschen und wieder voll schreiben, also nur die Elemente die sich verändert haben Löschen bzw. Hinzufürgen. Die Einträge in Array1 sind für gewöhnlich nicht sortiert sondern einfach durcheinandergewürfelt.

    Mfg

    PS.: Raupi : Ich suche nur nach nem Ansatzpunkt xD

    Computers are like Airconditioning. They don´t work with open Windows.

  • Ja das hast du falsch verstanden. Ich kann immer nur die Einträge die sich ändern Aktualisieren, also nicht das Ganze Array kopieren (wäre ich auch selbst drauf gekommen :)). Das Problem ist dabei das die Einträge im 1. Array nicht sortiert sind.

    Mfg

    Computers are like Airconditioning. They don´t work with open Windows.

  • Ja is für nen Tsakmanager. Er soll mit winlist() die offenen Anwendungen in ne Array einlesen, und von der aus immer den Listview bzw. eine Array zum Vergleichen was im Listview steht angleichen. Kann dir leider kein Beispiel zum Vergleichen von Arrays schicken da ich keins hab^^

    Hoffe das war jetzt verständlicher als vorher

    Mfg

    Computers are like Airconditioning. They don´t work with open Windows.

  • Hab jetzt ne Idee wo ic an der Umsetztung scheitere:

    Mit ner schleife nach der Reihe einfach die Einträge vergleichen. Wenn ein Eintrag bereichts vorhanden ist nichts ändern, aber in ner 3. Array abspeichern welche "Bereiche" schon verglichen wurden. Falls dann ein EIntrag Fehlt, dazuschreibe und ebenfalls den Index des 2. Arrays i 3. Array notieren. Fals Ein Eintrag im 2. Array am Ende des "Suchlaufs" Übrigbleibt einfach Löschen und die Anderen Einträge NAchsortieren, damit keine Leere Stelle mer im Array ist. Dann die 3. Array mit den schon verglichenen Indizes löschen und nach nem sleep wieder neu anfangen mit vergleichen.

    Problem: Wie mache ich es, das wenn nichts gefunden wurde, einfach Eingetragen wird, da die Arrays theoretisc in meinem Fall unendlich Groß sind? Array doch begrenzen?

    Mfg

    Computers are like Airconditioning. They don´t work with open Windows.

  • Achso^^

    Also in Array 1 stehen Offene Anwendungen z.b. Firefox, Media Player..., allerdings genau so wie sie von Winlist() herein kommen

    In Array 2 Stehen vorerst die Anwendungen die bei der Letzten Aktualisierung offen waren, also soll Array2 an Array1 angeglicen werden ohne das alles gelöscht und neu Hineingeschrieben wird, sonst passiert es wenn man keinen Fokus auf das Fenster hat, dass alles Doppelt und Dreifach Eingetragen wird und wenn man Dann in dem Listview in dem das Angezeigt wir einen Eintrag Anklicken will, wird auch Ständig der Focus von dem Element zurückgesetzt. Also wenn man dann z.b. den Prozess bebenden möchte kommt man nicht bis zum Beenden Button bis der Fokus scon weider weg is, oder die Aktualisierungsdauer is einfach zu lange, je nachdem

    Mfg

    Computers are like Airconditioning. They don´t work with open Windows.

  • mit fokus auf fenster meinte ich das die gui angeklickt ist

    "Doppelt und Dreifach eintragen" damit war gemaint, es hat dann die Alten Eiträge die drinnen gestanden sind, nicht mehr gelöscht, sondern nur mehr dazu geschrieben wenn die GUI nicht angeklickt war

    das mit den Anwendungen schließen will ich auch von autoit aus machen, jedoch atte ich immer das Problem dass, wenn ich eine Anwendung in Dem List view ausgewählt habe, das auswälen rückgängig gemacht wurde beim Aktualisieren

    Computers are like Airconditioning. They don´t work with open Windows.