Beiträge von mitac100

    Danke Bitnugger, die CPU-Last ist jetzt auf 0.


    Code
    While 1
        Sleep(10) ; 10-250 sind akzeptable Werte
    WEnd


    Funktion _Laufwerke_ListViewBox

    If @UserName = @UserName Or @UserName = @UserName Then

    Hust... das macht natürlich Sinn... ;)



    Ja, macht es, wenn ich die notwendige Funktion eingebettet hätte.

    Es gibt eine Vorgabe, nach der die Sicherung auf einem USB-Stick erfolgen muss.

    Nur eine kleine Anzahl Personen soll auch die Lokalen Laufwerke sehen können.




    Mit dem obigen Code wird das Ziellaufwerk gar nicht mehr angezeigt. Ansonsten bleibt alles beim gleichen.


    Wenn ich die beiden Zeilen...


    Global $hBackup_Laufwerke_ListView = ControlGetHandle($hGUI, '', $Backup_Laufwerke_ListView)

    Global $hRestore_Laufwerke_ListView = ControlGetHandle($hGUI, '', $Restore_Laufwerke_ListView)


    ...vor der Funktion Platziere, erhalte ich die Meldung: Variable used without being declared

    Case $hBackup_Laufwerke_ListView

    Case ^ ERROR


    Wenn ich am Anfang des Scripts Global $hBackup_Laufwerke_ListView und Global $hRestore_Laufwerke_ListView einfüge udn vor der Funktion...


    $hBackup_Laufwerke_ListView = ControlGetHandle($hGUI, '', $Backup_Laufwerke_ListView)

    $hRestore_Laufwerke_ListView = ControlGetHandle($hGUI, '', $Restore_Laufwerke_ListView)


    ...wird zwar das Programm gestartet, bei der Wahl eine Ziellaufwerks, wird dieses nicht mehr angezeigt.

    Du solltest dir angewöhnen binäre Ressourcen nicht im Hauptskript abzuspeichern, das verlangsamt den Editor einfach nur unnötig.

    Lager sie in eine eigene .au3 aus und binde sie mit include ein. Deine zip ist auch nicht lauffähig, die OutlookExConstants fehlt.


    Es wäre schön wenn du uns verrätst wo dein Skript in eine Schleife gerät, bzw. welche Funktionen ausgeführt werden wenn du Sachen anklickst die andere unwählbar machen,

    damit wir uns nicht durch die tausende Zeilen kämpfen müssen.

    Die Binarys habe ich ausgelagert, danke für den Tipp.

    Die OutlookExConstants wird nicht benötigt, ich habe sie dennoch in die neue zip im ersten Post eingefügt.


    Wenn ich eines der Laufwerke klicke wird darunter das Ziellaufwerk usw. angezeigt, siehe Bild.

    Sobald ich z.B. auf Einstellungen klicke und danach eine neues Laufwerk markiere, wird nicht das neue, sondern immer noch das zuvor gewählte Laufwerk angezeigt.

    In Zeile 1764 werden die _Backup_Einstellungen() aufgerufen. Der _Text_Editor ab 1961 und _Text_Editor_WM_NOTIFY ab 2042.


    Das ListView wird über die _Backup_Laufwerke_WM_Notify_Events Zeile 1517 gesteuert.

    Hallo,


    wegen der Übersichtlichkeit, habe ich meinem Backup Programm unten anderem eine neue Optik verpasst.

    Bis auf zwei Kleinigkeiten, klappt soweit alles.


    1. Die CPU-Last ist viel zu hoch
    2. Wenn ich einen der Buttons, Einstellungen, Datenaufnahme oder Protokoll klicke, kann ich danach kein Laufwerk mehr wählen.

    Was muss ich tun um das ListView zu reaktivieren?


    Das Programm generiert vorab eine Ini und sammelt die Notwendigen Daten für das Backup.

    Ablage: C:\Users\DeineID\MyBackupRestore\


    Leider reichen die 40.000 Zeichen für den Code nicht aus. Deshalb die Zip.


    MeineQuellen_1.0.0 muss vorab generiert werden.

    Das Programm generiert eine Ini und sammelt die Notwendigen Daten für das Backup.

    Ablage: C:\Users\DeineID\MyBackupRestore\


    Dateien

    myBackupRestore_1.0.8.zip

    @Bitnugger, habe das Skript zum besseren Verständnis gekürzt bzw. leicht angepasst. Bitrag von Alpines. Array - _ArrayInsert - Bitnugger

    Es geht einzig darum vor dem Pfad einen Key für die weitere Bearbeitung in der Ini zu setzen.


    autoBert, das funktioniert leider nicht. Es geht um die Keys.


    Kizum, funktioniert nicht, auch weil ubound , die werte aus _ArrayUnique multipliziert.


    Sieht dann so aus:

    1=D:\Documents\KeePass\Test.kdbx

    1=D:\Documents\KeePass\Test.kdbx

    3=D:\Documents\KeePass\Test.kdbx

    1=F:\Documents\KeePass\Test.kdbx

    1=F:\Documents\KeePass\Test.kdbx

    3=F:\Documents\KeePass\Test.kdbx


    Es ist egal ob ConsoleWrite sich innerhalb oder außerhalb der schleife befindet, die werte sind die gleichen.

    Hallo,


    ich stehe im Moment auf dem schlauch.

    Mein Skript mach nur zum Teil was es soll.

    Die Zeilen werden nach dem auslesen aus dem Array so dargestellt.


    Ist Stand:

    1=D:\Documents\KeePass\Test.kdbx

    1=F:\Documents\KeePass\Test.kdbx


    Was muss ich tun um die Zahl um eins zu erhöhen?


    Soll:

    1=D:\Documents\KeePass\Test.kdbx

    2=F:\Documents\KeePass\Test.kdbx



    KeePass.config.xml


    Hallo zusammen,


    @BugFix, danke für den Code, leider bringt mich das im Moment nicht weiter. Die zweite Routine rödelt mehr als 40 Sekunden, danach werden aber keine Daten angezeigt.

    Der Kopiervorgang startet auch nicht.


    @Peter S. Taler, der Kopiervorgang funktioniert mit Oscars Funktion perfekt. Die Excludes sind in der Ini enthalten. Der Anwender kann sie ebenso wie die zu kopierenden Pfade nach belieben erweitern.

    Es geht genau darum was AspirinJunkie geschrieben hat.


    Nur zur Info, in FileCopyEx ist bereits eine Funktion enthalten die vor dem Kopiervorgang ein Array der zu kopierenden Daten erstellt.

    Da ich 40 Einträge habe, werden 40 Arrays in folge erstellt. Ich fände es schöner wenn man die Funktion so aufbohren könnte, das Sie im Vorfeld ein Array für alle Daten erstellt.

    Falls sich jemand die UDF mal näher anschauen möchte, hier der Link : _FileCopyEx


    Danke und Grüße

    Mitac.

    Hallo zusammen,


    ich habe ein Skript welches Daten von A nach B kopiert. Die zu kopierenden Daten sind in der Ini zusammengefasst. Im Moment sind dort 40 Pfade eingetragen, diese können nach Belieben erweitert werden.

    Zum Kopieren verwenden ich die FileCopyEx Funktion von Oscar. Das Ganze funktioniert soweit perfekt.


    Nun zu dem Problem welches ich habe. Die Funktion generiert für jeden Eintrag in der Ini ein neues Array. Das führt jedoch zu Problemen beim Abbruch des Kopiervorgangs, da ich ab der Stelle alle nachfolgenden Kopieraktionen abbrechen muss.

    Ich habe mit Hilfe von Google und AutoIt versucht das Ganze in ein Großes Array zu packen, leider ohne Erfolg.

    Hier im Forum habe ich einen Ansatz dazu gefunden, es gelingt mir jedoch nicht den Code von Barbene03 an meine Bedürfnisse anzupassen. Array Dir Copy with Progressbar (#4)



    Die Ini ist wie folgt aufgebaut:

    [Quellen]

    01=d:\Documents\Desktop

    02=d:\Documents

    03=C:\Users\Mitac\Downloads

    04=C:\Users\Mitac\Favorites

    05=C:\Users\Mitac\Music

    06=C:\Users\Mitac\Pictures

    07=C:\Users\Mitac\Videos

    08=C:\Users\Mitac\Links

    09=C:\Users\Mitac\Documentum

    10=C:\Users\Mitac\Kontakte

    11=C:\Users\Mitac\_Datenaufnahme

    12=C:\Users\Mitac\AppData\Local\Microsoft\OneNote

    13=C:\Users\Mitac\AppData\Local\Microsoft\FORMS


    Vielleicht kann mir jemand von Euch ein paar Zeilen Code zur Verfügung stellen mit der sich das realisieren lässt.

    Im Voraus vielen Dank. Mitac

    Hallo,


    beim Exportieren der MRU Werte per ini erhalte ich folgende FM:


    FEHLER: Ungültige Syntax.

    Geben Sie "REG EXPORT /?" ein, um die Syntax anzuzeigen.


    Die anderen Schlüssel werden sauber exportiert.


    So, werden auch die MRU Werte exportiert.


    RunWait(@Comspec & ' /k reg EXPORT "HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Access\File MRU" Access_16_File_MRU.reg',@ScriptDir & "\Regkeys", @sw_show)


    Hat jemand eine Idee woran es liegen könnte?


    [Registry]

    Jumplistitems_Maximum="HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced"

    TypedPaths="HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths"

    Network="HKEY_CURRENT_USER\Network"

    Control_Panel="HKEY_CURRENT_USER\Control Panel"

    Access_16_File_MRU="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Access\File MRU"

    Access_16_Place_MRU="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Access\Place MRU"

    Excel_16_File_MRU="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Excel\File MRU"

    Excel_16_Place_ MRU ="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Excel\Place MRU"

    OneNote_16_Place_ MRU ="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\OneNote\Place MRU"

    Outlook_16_Profiles="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Profiles"

    Word_16_File_ MRU ="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Word\File MRU"

    Word_16_Place_MRU="HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Word\Place MRU"


    1. Problem - Beim klicken des Radio Buttons erfolgt keine Aktivität. Über den Schalter "Ausgewählte..." klappt alles wunderbar. Was mache ich falsch?


    2. Wenn ich zwei Sticks angeschlossen habe und diese abwechselnd in die ini schreiben lasse, erhalte ich folgende FM: (312) : ==> Can not redeclare a constant


    Hallo autoiter,


    das bringt mich auch nicht weiter. Vielmehr stellt sich mir die Frage, wie muss die FOR/NEXT Schleife aussehen, damit alle Pfade gesplittet sind.

    Im Moment funktioniert das nur mit dem letzten Pfad.


    Nur zur Info. Ich bin ein Newbie was Coden angeht. Falls Du, oder jemand anders mir den Code bereitstellen würde, wäre ich sehr dankbar.


    Ist:


    C:\Users\MeineID\AppData\Local\Microsoft\Outlook\meine.mail@gmail.com.ost

    D:\Documents\Outlook-Dateien\iCloud Archive.pst

    D:\Ordner\Orner1\Ordner2\Outlook-Dateien\iCloud Archive1.pst

    F:\Ordner\iCloud Archive2.pst

    G:\Ordner\Ordner1\Ordner2\Ordner3\Outlook-Dateien\iCloud Archive3.pst

    C:\Users\MeineID\AppData\Local\Microsoft\Outlook\meine.mail1@gmail.com.ost


    Soll:


    C:\Users\MeineID\AppData\Local\Microsoft\Outlook

    D:\Documents\Outlook-Dateien

    D:\Ordner\Orner1\Ordner2\Outlook-Dateien

    F:\Ordner

    G:\Ordner\Ordner1\Ordner2\Ordner3\Outlook-Dateien

    C:\Users\MeineID\AppData\Local\Microsoft\Outlook


    Grüße mitac

    Hallo,


    wie muss das Script erweitert werden damit alle Pfade gesplittet werden.

    Im Moment wird nur der letzte Pfad gesplittet.


    C:\Users\MeineID\AppData\Local\Microsoft\Outlook\meine.mail@gmail.com.ost

    D:\Documents\Outlook-Dateien\iCloud Archive.pst

    D:\Ordner\Orner1\Ordner2\Outlook-Dateien\iCloud Archive1.pst

    F:\Ordner\iCloud Archive2.pst

    G:\Ordner\Ordner1\Ordner2\Ordner3\Outlook-Dateien\iCloud Archive3.pst

    C:\Users\MeineID\AppData\Local\Microsoft\Outlook\meine.mail1@gmail.com.ost