WritePrivateProfilexxx() bei mehreren gestarteten Applikationen?



  • Hallo Gemeinde,

    gibt es in etwa eine Art "Richtlinie" wie man die WritePrivateProfilexxx() Funktionen bei mehreren gleichzeitig gestarteten Applikationen anwendet?

    Nun zu meiner Problematik:
    Normalerweise wird nur eine Applikation zur gleichen Zeit gestartet.
    Durch einen named Mutex kann ich dafür sorgen, daß dieser Zustand auch gewährleistet ist.

    Allerdings kann es erforderlich sein, diese Applikation mehrfach zu starten.
    Dafür gibts eine extra Einstellmöglichkeit "Nur 1 Kopie von App_xxx erlaubt" (ja/nein).
    Soweit, sogut.

    Was mir aber ein wenig Grips erfordert ist die zusätzliche Option "Einstellungen beim Beenden automatisch speichern" (ja/nein).
    Gemeint ist hier das Speichern in eine *.ini-Datei mittels WritePrivateProfilexxx() Funktionen.
    Es werden neben Arbeitsparameter auch die Fensterpositionen gespeichert.
    Der Speicherort ist lokal und unabhängig vom User, der Pfad wird mittels CSIDL_COMMON_APPDATA ermittelt.

    Wie löst man das am besten?
    Ich dachte an diese Lösungsform: Nur die zuletzt geschlossene Applikation darf die Einstellungen automatisch beim Beenden speichern.
    Dafür wäre wohl oder übel eine Semaphore statt Mutex notwendig, damit man erkennen kann, daß nur noch eine Applikation läuft.

    Oder gibt es einfachere Lösungen?
    Martin



  • Die letzte Anwendung siegt. Dafür brauchst Du auch keine Synchronisation, da die Daten der vorher geschlossenen Anwendungen sowieso von der nächsten überschrieben werden.



  • Mann-o-mann *SichAnDieStirnKlatsch*

    Wie war das nochmal?
    "Man sieht vor lauter Bäumen den Wald nicht" bzw. umgekehrt 🙄

    Die einfachsten Lösungen sind immer noch die besten!
    Danke sri, hast mich vor vielen Stunden unnützem Coding bewahrt... 👍

    Martin


Log in to reply