![]() |
AW: Wie feststellen, ob eine Datei gelesen werden kann?
Zitat:
Und das einzige, was hier sinnvoll ist, ist die Aktion zu probieren. Und wenn es nicht ging, dann gab es wohl ein Problem und man kann eine Fehlermeldung anzeigen. Die Info, ob eine Datei schreibbar ist, ist ja in dem Moment schon veraltet (und damit nutzlos) in dem die sie bekommst. Stell dir eine Anwendung vor, die 10 Mal pro Sekunde eine Datei exklusiv zum schreiben öffnet, eine Zeile schreibt und wieder schließt. Doofes Programm, aber kann man machen. Und du versuchst, die gleiche Datei zu öffnen. Wenn du dann sowas machst wie
Delphi-Quellcode:
Ist dein Programm instabil, weil es dennoch zu einer Exception kommen kann!
if IsFileReadable(AHTMLFile) then
ThisHTMLStr := TFile.ReadAllText(AHTMLFile) else LogThisError; Denk' immer dran, dein Programm kann jederzeit unterbrochen werden. Und bevor du wieder drankommst können potenziell alle anderen Prozesse im System laufen. Und dann bin ich gerade noch auf ![]() Es könnte also sein, dass die Datei zwar in Verwendung ist, du aber den Schreibzugriff trotzdem bekommst, wenn du fragst ;-) |
AW: Wie feststellen, ob eine Datei gelesen werden kann?
Zitat:
|
AW: Wie feststellen, ob eine Datei gelesen werden kann?
Wie ich jetzt entdeckt habe, entsteht seltsamerweise kein Fehler, wenn eine .DOC-Datei (also NICHT .DOCX) gelesen wird, während sie in MS Word 2010 geöffnet ist.
Seltsam! |
AW: Wie feststellen, ob eine Datei gelesen werden kann?
Wirklich seltsam. Bei mir (Windows 8.1, Word 2010, lokaler Zugriff, also kein Netzwerk) kann ich keinen Unterschied zwischen .doc und .docx feststellen. Beide können gelesen, aber natürlich nicht beschrieben werden, wenn sie in Word geöffnet sind.
|
AW: Wie feststellen, ob eine Datei gelesen werden kann?
Das kommt auf die Art und Weise an mit der der Zugriff erfolgt. Das Auslesen einer .doc geht auch ohne share write, weil diese für die neue Word Version konvertiert und nicht direkt geöffnet wird.
Die .docx wird hingegen direkt geöffnet und kann daher nur mit share write Flag geöffnet werden. |
AW: Wie feststellen, ob eine Datei gelesen werden kann?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz