Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi BDE/Paradox Multiclients unter Vista: Applikation hängt (https://www.delphipraxis.net/112690-bde-paradox-multiclients-unter-vista-applikation-haengt.html)

hoika 29. Apr 2008 10:25

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Hallo,

prüfe mal, was für Datei-Rechte die .lck (im db Verzeichnis)
und die pdoxusrs.net (net dir) haben.

Dazu muss des 1. Programm gestartet sein.


Heiko

schoellm 29. Apr 2008 14:13

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Zitat:

Zitat von hoika
prüfe mal, was für Datei-Rechte die .lck (im db Verzeichnis)
und die pdoxusrs.net (net dir) haben.

Dazu muss des 1. Programm gestartet sein.
Heiko

Ich habe den Dateizugriff auf dem Ordner, wo die lck, .net und .db Dateien liegen, so eingestellt:
Die Benutzer 'Jeder', 'Autorisierte Benutzer', 'User1' (den benutze ich bei beiden Clients zum Anmelden auf dem Server), administrator
haben alle
Vollzugriff, lesen-ausführen, schreiben, Ändern, Erstellen, und was es sonst noch für Häkchen gibt (außer "Spezielle Berechtigungen")
Die Berechtigungen werden auf alle Dateien darunter vererbt.
Wenn gerade das Programm nicht offen ist, kann ich auch die Dateien beliebig im explorer/Editor erstellen, ändern, löschen.
Wenn es offen ist, kann ich das nicht (aber das ist normal, auch mit Datenbank auf einem 2003 Server nicht anders)

Wie ich ganz oben schrieb, die BDE verwaltet die Sperrungen auf Tabellen/Datensätze bei parallelem Zugriff meines Wissens über die .lck Datei. Ich denke, die BDE wird an allen Clients versuchen, die Datei in einem speziellen 'Share' Modus öffnen, so daß alle ihre Sperren reinschreiben können und sich dadurch synchronisieren.

schoellm 29. Apr 2008 15:31

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Zitat:

Zitat von QuickAndDirty
ich meine um es nach zustellen.
Müste man DLL unter XP Compilieren welche datei zugriffe ausführen.

Die müsten dann ja den selben Fehler reproduzieren können.
Dann kann man ja auch Rausfinden was der Scheiß soll und wieso es passiert.

Es muss doch irgendwie an CreateFile Liegen oder?
Und das Problem müste dann auch mit normalen Dateien auftreten. Es sei den es gibt
Code:
if (cmpstr(filename,'paradox.net')==0){
  dostupidaction();
}
Abschnitte.

Wie ich ganz oben schrieb, die BDE verwaltet die Sperrungen auf Tabellen/Datensätze bei parallelem Zugriff meines Wissens über die .lck Datei. Spekulation: die BDE versucht, an allen Clients die Datei in einem 'Share' Modus öffnen (OF_SHARE_DENY_NONE, FILE_SHARE_WRITE ...), so daß alle ihre Sperren reinschreiben können und sich dadurch synchronisieren.

Wo man es compiliert, ist egal. Problem ist, daß ich nicht weiß, welcher Öffnungsmodus von der BDE verwendet wird.

Vielleicht könnte man in "perfmon" oder einem anderen Windows-Diagnoseprogramm auf dem Server irgendwie rauskriegen, welche Dateien wie geöffnet werden, oder wo das Problem liegt. Aber spontan fand ich unter den unzähligen 'Leistungsindikatoren' nichts Brauchbares. In den eventlogs stand auch nichts Auffälliges.
Vielleicht weiß jemand, wie man auf dem 2008 Server irgendwie 'geblockte' Dateianfragen sehen kann. Bei 'Geöffnete Dateien verwalten' war ich, dort zeigt der Server für die .lck Dateien folgendes an:
* 'geöffnet durch' = der Benutzer, der das Programm zuerst gestartet hat
* 'Anzahl Sperren' = 0
* 'Öffnungsmodus' = Lesen, Schreiben

QuickAndDirty 29. Apr 2008 15:45

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Kann es nicht sein das Spiezielleberechtigung auch gesetzt sein sollte?

schoellm 30. Apr 2008 11:12

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Endlich habe ich in einem anderen Forum einen vernünftigen Hinweis erhalten. Es handelt sich nicht um ein BDE Problem sondern um einen Vistabug, der Microsoft schon bekannt ist. Betroffen ist nicht nur BDE, sondern alle "Nicht-Client-Serverdatenbanken", die auf einem Shareordner unter Vista liegen (auch z.B. Access).
Anscheinend in Vista SP1 behoben.
http://www.delphipages.com/threads/t...95262&G=195217

Hier ein freundlicher Gruß an alle Besserwisser, die unkonstruktive Ratschläge gegeben haben: ist doch mal wieder Microsoft schuld, und hat sich auch noch selbst ins Knie geschossen.

bluesbear 30. Apr 2008 11:22

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Zitat:

Zitat von schoellm
(...)Anscheinend in Vista SP1 behoben.(...)

Gut zu wissen. Da wär isch im Lääbe net druff gekomme! :stupid:

mkinzler 30. Apr 2008 11:24

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Deshalb also weiter auf die BDE setzen, bis die Wand da ist. :zwinker:

Bernhard Geyer 30. Apr 2008 13:41

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Zitat:

Zitat von mkinzler
Deshalb also weiter auf die BDE setzen, bis die Wand da ist. :zwinker:

Lassen wir ihn. Er hatt jetzt Glück gehabt das sein Programm "nur" ca. 4 Monate (Vista-Releas Dezember 2007, Bugfix-Release April 2008) nicht lauffähig war und es keiner gemerkt hat. Beim nächsten Vista-Bug welcher nur die BDE betrifft wird MS nix machen und er kann sich dann über MS ärgern.

Ach ja: Wieviel Stunden hatt die Fehlersuche gedauert? Wieviel Prozent des Programmes wären damit umgestellt gewesen?

bluesbear 30. Apr 2008 21:04

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Zitat:

Zitat von Bernhard Geyer
(...) Wieviel Prozent des Programmes wären damit umgestellt gewesen?

Bei mir wären es nicht mal annähernd Promille.
Wieso geht ihr eigentlich davon aus, das sich jemand heutzutage noch *freiwillig mit der BDE rumschlägt?
Diese Vorstellung ist absurd.
Die Zeitbombe ist einmal mehr entschärft worden, für ne Weile. :zwinker:

Bernhard Geyer 30. Apr 2008 22:42

Re: BDE/Paradox Multiclients unter Vista: Applikation hängt
 
Zitat:

Zitat von bluesbear
Zitat:

Zitat von Bernhard Geyer
(...) Wieviel Prozent des Programmes wären damit umgestellt gewesen?

Bei mir wären es nicht mal annähernd Promille.

Dannn sollte man sich überlegen ob die Architektur der SW passend ist. Stichwörter sind hier Kapslung des DB-Zugriffs.
Ich habe schon mal in 2-3 Tagen den DB-Zugriff auf MySQL von BDE auf native Komponenten umgestellt. War aber auch einfach da der DBMS-Spezifische Teil eh schon in einer Unit gekapselt ist.
Zitat:

Zitat von bluesbear
Wieso geht ihr eigentlich davon aus, das sich jemand heutzutage noch *freiwillig mit der BDE rumschlägt?
Diese Vorstellung ist absurd.

Also sollte man etwas dagegen machen und auch Überzeugungsarbeit auf Chefebene leisten. Denn falls du das nicht machst (bzw. machst aber nicht eindeutig Protokollierst) so wirdst du der Schuldige sein der für die Katastrophe verantwortlich ist wenn z.B. mit XP SP3 es keinen Ausweg mehr gibt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:35 Uhr.
Seite 3 von 4     123 4      

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