Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Gleichzeitiger Dateizugriff (https://www.delphipraxis.net/189491-gleichzeitiger-dateizugriff.html)

udo888 17. Jun 2016 16:15

Betriebssystem: Win 10

Gleichzeitiger Dateizugriff
 
Es geht um eine Software-Umstellung von Win7 nach Win10.
Unter Win7 gab es keine Probleme, auf eine Daten-Datei von verschiedenen Usern im Netzwerk parallel zuzugreifen. Die Datei liegt in einem freigegebenen Ordner auf einem PC im Netzwerk.

Sobald jetzt ein PC unter Win10 die Datei öffnet, ist von den anderen PC kein Zugriff mehr möglich, die Datei ist exklusiv geöffnet. Ebenso schmiert der Zugriff unter Win10 ab, wenn Win7 bereits Zugriff hat.

Bis Win7 funktionierte das alles ohne Probleme. Was passiert unter Win10 (bzw. bereits ab Win8) beim Dateizugriff anders? Kann ich die Zugriffe irgendwo konfigurieren?

hoika 17. Jun 2016 16:52

AW: Gleichzeitiger Dateizugriff
 
Hallo,
schau dir mal die Variable FileMode an.
Ausserdem zeig mal ein bisschen Code, wie genau du auf die Datei zugreifst.
Kannst du denn mit dem Windows-Editor unter Win10 auf deine Datei zugreifen?


Heiko

udo888 17. Jun 2016 19:08

AW: Gleichzeitiger Dateizugriff
 
Einen Code posten bringt sicher nichts (ist auch zu komplex), die betreffende Software läuft bereits seit 12 Jahren und die Zugriffe bei Vernetzung unter Win7-PC funktionierten immer. Es handelt sich um eine "eigene" Datenbank mit datensatzorientierten Zugriffen.
Filemode ist auf dem richtigen Wert für gleichzeitige Zugriffe.
Leider habe ich nicht die Möglichkeit, das ganze Projekt mal kurz auf eine "echte" DB umzustellen.

Zu deiner Frage: Mit dem Windows-Editor kann ich von beiden PC gleichzeitig zugreifen. Allerdings öffnet dieser die Datei nur kurz zum Einlesen und behält sie nicht im Zugriff.

Vielleicht kenn jemand einen Kniff, mit dem Windows wieder zu dem alten Zugriffsverhalten zurückgestellt werden kann?

jaenicke 18. Jun 2016 07:53

AW: Gleichzeitiger Dateizugriff
 
Die Änderung könnte mit dem neuen SMB Protokoll zu tun haben. Das kannst du ja testweise einmal deaktivieren.
https://support.microsoft.com/en-us/kb/2696547

udo888 20. Jun 2016 17:09

AW: Gleichzeitiger Dateizugriff
 
Ich werde das probieren.
Ab Win8 ist das SMB-Protokoll Version 3 aktiv. Dieses werde ich beim Kunden deaktivieren.

Vielleicht gibt es noch andere Tipps?

himitsu 20. Jun 2016 17:42

AW: Gleichzeitiger Dateizugriff
 
Zitat:

Ebenso schmiert der Zugriff unter Win10 ab, wenn Win7 bereits Zugriff hat.
Und das heißt was?

Zugriff verweigert?


Gemeinsame Dateizugriffe werden über den ShareMode (FileMode bei den alten Delphi-Funktionen) geregelt,
also ob man selber ganz/teilweise exclusiv öffnen will und ob man anderen den Zugriff erlaubt.
Eigentlich sollte das SMB-Protokoll den ShareMode mit übergeben und auf Serverseite benutzen. (aber das sollte dann da natürlich auch richtig oder überhaupt implementiert sein)

jaenicke 20. Jun 2016 20:44

AW: Gleichzeitiger Dateizugriff
 
Ja, der genaue Fehlercode wäre auch interessant, der zurückgegeben wird.

Du kannst auch mit dem Process Monitor einmal schauen was an der Stelle passiert. Ein Screenshot der Details des dort geloggten Zugriff würde vermutlich auch mehr Klarheit bringen, wenn du den hier postest.

baumina 21. Jun 2016 09:09

AW: Gleichzeitiger Dateizugriff
 
Gleiches Problem hatte ich auch, Abhilfe konnte ich durch Umstellung auf TFilestream schaffen.
http://www.delphipraxis.net/185425-t...hler-32-a.html

udo888 22. Jun 2016 12:21

AW: Gleichzeitiger Dateizugriff
 
Leider läuft die Anwendung bei einem weit entfernten Kunden, bei dem auch keine Fernwartung funktioniert. Nach Möglichkeit möchte ich alle möglichen Ursachen im Voraus prüfen, bevor ich mich auf den weiten Weg mache.

Es erscheint ein Zugriffsfehler "Zugriff auf Datei nicht möglich".

Unter ähnlichen Konstellationen habe ich bei einem anderen Kunden von BTRIEVE den Fehler 88 zurück erhalten:
The application tried to open a file in an incompatible mode.
If the first application to access to a file opens it in accelerated
mode, all other applications must open it in accelerated mode. If
the first application to access a file opens it in non-accelerated
mode, other applications cannot open the file in accelerated mode.

Sinngemäß funktioniert das dort auch mit ShareMode/FileMode. Unter Win7 gab es keine Probleme.

p80286 22. Jun 2016 12:46

AW: Gleichzeitiger Dateizugriff
 
Zitat:

Zitat von udo888 (Beitrag 1340766)
"Zugriff auf Datei nicht möglich".

ist ja eine echt aussagekräftige Meldung. Nimm sie doch einmal wörtlich.
a) ist die Datei überhaupt vorhanden,
b) hat der Benutzer die notwendigen Berechtigungen. (in welcher Gruppe ist der Benutzer Mitglied!?)
c) gibt es sonstige "Bosheiten" (ReadOnly?)

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:50 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz