Danke für Eure Antworten!
... aber OpenOffice erstellt doch beim öffnen einer Datei im Dateisystem eine Lock-Datei. Wäre es nicht eine Möglichkeit, darauf zu "warten", dass diese wieder gelöscht wird - was üblicherweise der Fall ist, wenn das Dokument geschlossen wird.
Die Datei hatte ich bemerkt; wohl mir fehlte die Idee, auch daraus einen Ansatz zu machen. Hört sich gut an und ich werde es mal ausprobieren.
Tut OpenOffice nicht eine
API bereitstellen?
Auch das scheint ein Ansatz zu sein. Da muss ich mich mal belesen. Es wäre zu schön, wenn man es damit machen könnte...
Der Programmablauf nur nochmal zur Erklärung:
Delphi-Quellcode:
1. Benutzer möchte Datei laden.
2. Server -> Client (hinter lahmem VPN!) lade Datei!
3. Client = kopiert Datei ins Temp-Verzeichnis
4. Client = lässt OOO-Datei öffnen
5. Client = wartet, bis Datei wieder geschlossen wurde //<- hier habe ich die meisten Probleme
6. Client = kopiert/verschiebt Datei wieder zurück auf den Server (hinter dem VPN)
Das Problem sind die abartig langen Wartezeiten, wenn OOO eine Datei übers VPN laden muss. Auch wenn die nur 20 KB groß ist und das VPN einen Durchsatz in beide Richtungen von 100 KB/S (bereits netto) schaffte mit Ping-Zeiten um die 25 ms, dauert das Laden teilweise bis zu 1 min
Und dann bricht manchmal auch die Verbindung ab -> defekte lock-Datei, nicht aktuelle Datei ...
Deshalb der ganze Aufwand, um den Flaschenhals VPN zu entschärfen!
Ich hatte es bereits über Prozesse, Prozess-ID, testen ob die Datei exklusiv zu öffnen geht etc. probiert. Aber so wirklich sicher klappte das nie.
Das mit der Lock-Datei liegt sowas von auf der Hand, dass mir das nie aufgefallen ist (Wald vor lauter Bäumen und so).
Gruß, Alex