Unterscheiden ob Software im Vordergrund oder im Hintergrund läuft

  • Hallo Zusammen,
    ich stehe mal wieder vor ein Problem. Ich nutze die Software "File Systems for Windows by Paragon Software". Diese kann Linux Dateisysteme in Windows bereitstellen. Allerdings gibt es einen hacken, den ich probiere zu umgehen. Diese Software nutz einen Dienst, der der Software erlaubt exklusive auf ein Laufwerk zuzugreifen. Wenn dieser Dienst läuft, dann kann kein anderes Tool Raw auf z.B. die SD-Karte zugreifen, um diese zu flashen. Daher wollte ich ein AuoIt-Skript schreiben, der den Dienst erst startet, dann das Programm ausführt und beim schließen des Programm den Dienst auch wieder stoppt. Es funktioniert auch soweit alles, bis zur Erkennung, ob die Software geschlossen ist. Leider schließt der X-Button die Software nicht, sondern diese begibt sich nur in den Hintergrund und bleibt als Systray-Icon vorhanden. Eine Abfrage mit WinGetState bringt auch keinen Erfolg, da schon beim nutzen eines x-beliebigen Button die Software ihren Status ändert und nicht wiederherstellt.

    Die einzige Möglichkeit wie ich dies unterscheiden könnte, wäre zu prüfen ob die Software im Vordergrund (siehe im Anhang Vordergrund.png) oder im Hintergrund (siehe im Anhang Hintergrund.png) läuft. Hat einer eine Idee, wie ich dies in AutoIt abbilden kann?

    Link zur Software: https://www.paragon-software.com/home/linuxfs-windows/

    Vielen Dank für eure Unterstützung!

    Gruß
    Homer J. S.

  • Beitrag von Schnuffel (19. April 2025 um 14:40)

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: ich hab den Autor mißverstanden (19. April 2025 um 16:19).
  • du kannst vielleicht deine Software über den extmounter.exe steuern und damit mounten und unmounten.

    Code
    C:\Program Files (x86)\Paragon Software\LinuxFS for Windows>extmounter.exe
    Usage:
            /list - show ext tree(disk/volume)
            /refresh disk# [volume#] -- update state of disk# [and volume#]
            /mount [/ro - read only] [/online - force online disk and volume] [/ugm [uid value] [gid value] [mode value]] [disk#,lvm#] [volume#] [mount point] [/p "password"] - mount volume(s)
            /umount [disk#,lvm#] [mount point] - unmount volume(s)
            /ugm disk# volume#
            /fsck [disk#,lvm#] [options]
            /mkfs [disk#,lvm#] [options]
            /logging on/off -- enable/diable extended logging

    Desweiteren kannst du den Status des Fensters so anfragen: (kann man sicherlich verbessern)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ausführbares Script ("as is"), dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

    Man möge mir verzeihen, wenn ich nicht perfekten und ideal lesbaren Code zur Verfügung stelle.
    Ich möchte Hilfe zur Selbsthilfe leisten und denke dass eine gewisse Transferleistung erwartet werden kann.

    Einmal editiert, zuletzt von Schnuffel (21. April 2025 um 14:09)