Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#3

AW: Prüfen ob bestimmte Datei in Excel geöffnet ist

  Alt 20. Jun 2020, 16:56
Im Grunde ist es meist egal, wer es ist, denn wichtig ist nur ob oder ob nicht.

PS: Auch der FileDialog kann die Datei geöffnet haben.
* einem ein Handler im Explorer, zu Anzeige von Dateiinfos, dem Icon oder einem Overlay,
* und natürlich auch der Virenscanner, während auf die Datei zugegriffen wird (beim Rausholen des Icon und der Zusatzinfos)
* oder der Dialog selber, in Form einer Vorschau
* und beim Speichern gibt es einen Zugriffstest, den man in den Optionen des Dateidialog de-/aktivieren kann

Klar, das Handle besorgen, dann in allen Programmen die Handles auslesen und dieses Handle suchen, aber ...
Sich in alle Programme hooken, dort alle Handles suchen, zu jedem Handle den Dateinamen rausfinden und das verrgleichen, aber neeeeeee...

Dann, siehe ganz unten in dem Link, gibt es in aktuelleren Windowsen eine API, wo man aber nur Programme rausbekommt, die ihre offenen Dateien dort registrieren, was z.B. Excel macht.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (20. Jun 2020 um 16:59 Uhr)
  Mit Zitat antworten Zitat