Ermitteln ob eine Datei kopiert wird



  • Hallo,

    ich habe folgendes Problem:
    Programm A schreibt zyklisch Daten in eine Access Datenbank über SQL.
    Programm B kopiert in gaaanz seltenen Fällen die Datenbank im
    laufenden Betrieb.
    Wenn jetzt aber Programm A Daten in die Datei schreiben möchte
    während Programm B gerade kopiert gibt's eine Fehlermeldung.

    Nun meine Frage ist es möglich herauszufinden ob eine Datei gerade
    kopiert wird 😕 ? Bei meiner Recherche habe ich nur einen hook für
    Verzeichnisse gefunden, nicht für einzelne Dateien.

    Weiß von euch jemand nen Trick ?

    Gruß Ulli :xmas1:



  • Ich würde das gar nicht so kompliziert machen über hooks oder ähnliches.
    Meine Vorschläge:
    Für den Fall, dass du die Datei kennst, die eventuell kopiert wird und du beide Programme ändern kannst:
    - Programm A lockt diese Datei exklusiv für sich und Programm B versucht sie lesend zu öffnen. Geht das nicht, macht Programm A gerade was damit.
    - Programm A schreibt in eine von beiden Programmen verwendetes File den Status, ob die Datei kopiert wird oder nicht.
    - Programm B fragt bei Programm A nach (Interprocess-Kommunikation), ob denn gerade was kopiert wird.

    Wenn du die beiden Programm nicht ändern kannst, funktionieren diese Vorschläge natürlich nicht.



  • Danke für deinen Vorschlag,
    ich kann leider nur Programm A welches den Fehler meckert
    auf einfache Weise ändern. Möglich wäre ja auch zu prüfen
    ob Programm B (welches kopiert) gerade läuft und dann
    keine Fehlermeldung auszugeben. Interessieren würde es mich
    allerdings schon ob es eine Möglichkeit gibt den Kopiervorgang
    herauszufinden.

    Gruß Ulli





  • Ich rate dazu einen Gedanken darun zu verschwenden, was wohl Programm A macht, wenn Programm B gerade die Datei kopiert und währenddessen Programm A dort was reinschreiben möchte.



  • @Source2702: Danke fuer den link, schau ich mir mal an 👍

    @Morle: Was passiert kann ich genau sagen: Die Daten landen nicht
    in der Datei 😃 . Was aber auch nicht schlimm ist, diese werden
    aufgepuffert und dann eben später reingeschrieben.
    Doof ist nur, dass in diesem sehr speziellen Fall welcher sehr
    selten auftritt eine Fehlermeldung erzeugt wird, welche
    dann z.B. auch in der Error- History auftacht.

    Gruß Ulli



  • Dieser Thread wurde von Moderator/in Martin Richter aus dem Forum MFC (Visual C++) in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten