Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi BDE Zugriff verweigert unter Vista (https://www.delphipraxis.net/110266-bde-zugriff-verweigert-unter-vista.html)

Albert Kelvin 15. Mär 2008 19:25

Datenbank: Paradox 7 • Version: Delphi 2007 • Zugriff über: BDE

BDE Zugriff verweigert unter Vista
 
Das Problem: Unter Windows Vista kann ich nicht mit der BDE arbeiten (ich nutzte bisher Window XP und Delphi 4 – da gab es keinerlei Probleme, diese treten nur in der Kombination Windows Vista und Delphi 2007 auf.
Wenn ich bei Verwendung der BDE-TTable-Komponente (nach Eintrag des Tabellennamens (mit Pfad) und des Tabellentyps (Paradox 7)) beide verbinden will (wie es unter Delphi 4 keinerlei Probleme macht), weigert sich das Programm´, das zu tun, mit der Fehlermeldung:
Fehler beim Initialisieren des Netzwerkes
Datei oder Verzeichnis nicht vorhanden
Datei C:\PDOXUSRS.NET
Zugriff verweigert
Verzeichnis C:\..
Entsprechend eines Hinweises auf der Delphi 2007-DVD habe ich auch die BDE neu konfiguriert und habe den Parameter NET DIR so geändert, dass er nicht auf das Stammverzeichnis (C:\) zeigt. Das Problem war aber damit nicht gelöst. Es ließen sich keinerlei Verbindungen zur real existierenden Paradox-Tabelle herstellen.
Aus Verzweiflung habe ich Delphi 2007 nochmals runtergeworfen und neu installiert und das ganze nochmals versucht. Interessanterweise klappte es jetzt wunschgemäß. Allerdings nur, bis ich die Sitzung abgeschlossen habe. Beim nächsten Aufruf war alles wierder beim Alten. Vermutlich liegt hier ein Einstellungsproblem vor.
Ich bitte um hilfreiche Tips.

mkinzler 15. Mär 2008 19:28

Re: BDE Zugriff verweigert unter Vista
 
Setze in der Session den Pfad für die Lockdatei auf ein Verzeichnis, in dem der Benutzer Schreibrechte hat.

MrSpock 15. Mär 2008 19:30

Re: BDE Zugriff verweigert unter Vista
 
Hallo Albert,

das dürfte an den eingeschränkten Rechten im neuen Rechtemanagement von Vista zu tun haben. Stelle die BDE so ein, dass die Pdoxusrs.net in einem Verzeichnis steht, auf dass jeder Zugriff hat.

[edit]Oops, mkinzler war mal wieder schneller.
Übrigens: Herzlich willkommen in der Delphi-PRAXiS, Albert.
[/edit]

Albert Kelvin 15. Mär 2008 22:25

Re: BDE Zugriff verweigert unter Vista
 
Vielen Dank für Eure Hilfe und die begrüssung beim Delphi-Praxis-Forum. Das dargestellte Problem ist gelöst

Albert

hberdel 2. Mai 2011 13:29

AW: Re: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von mkinzler (Beitrag 751094)
Setze in der Session den Pfad für die Lockdatei auf ein Verzeichnis, in dem der Benutzer Schreibrechte hat.

Hallo, ich habe das gleiche Problem unter W7. Was bedeutet das genau: 'Setze in der Session den Pfad . . . Was ist mit Session gemeint?

hberdel 2. Mai 2011 14:07

AW: Re: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von hberdel (Beitrag 1098310)
Zitat:

Zitat von mkinzler (Beitrag 751094)
Setze in der Session den Pfad für die Lockdatei auf ein Verzeichnis, in dem der Benutzer Schreibrechte hat.

Hallo, ich habe das gleiche Problem unter W7. Was bedeutet das genau: 'Setze in der Session den Pfad . . . Was ist mit Session gemeint?

--------------------------------------
Hat sich erledigt. Sicherheitseinstellungen (Schieberegler) ganz nach unten gezogen und es hat geflutscht.:-D

DeddyH 2. Mai 2011 14:42

AW: BDE Zugriff verweigert unter Vista
 
*Ouch* das ist aber nicht der Weisheit letzter Schluss, die Sicherheitseinstellungen haben ja ihren Sinn. Was Markus wohl damals meinte: setze zur Laufzeit (also per Quellcode) den Pfad der Lockdatei auf ein Verzeichnis mit den benötigten Rechten.

Die Muhkuh 2. Mai 2011 16:06

AW: BDE Zugriff verweigert unter Vista
 
Migrier am besten zu FireBird :)

DeddyH 2. Mai 2011 17:02

AW: BDE Zugriff verweigert unter Vista
 
Ich wollte es extra nicht sagen :mrgreen:

p80286 2. Mai 2011 17:16

AW: BDE Zugriff verweigert unter Vista
 
Entschuldigt, aber ich kann dieses BDE-Bashing nicht mehr lesen, auch wenn ich es gut nachvollziehen kann.

Aber wen noch heute (oder irre ich mich da?) die BDE die DB-Schnittstelle von Delphi ist, dann kann ich die vielen Fragen dazu gut verstehen.

(BDE war unter D5 schon nicht viel wert!)
Gruß
K-H

DeddyH 2. Mai 2011 17:19

AW: BDE Zugriff verweigert unter Vista
 
Seit Delphi 6 (IIRC) wird die BDE nicht mehr gepflegt, stattdessen soll/sollte man auf DBExpress umsteigen.

H4ndy 11. Okt 2011 10:38

AW: BDE Zugriff verweigert unter Vista
 
Ich wärme das Thema ja nur ungern auf, aber keiner hat geschrieben wie man nun überhaupt
"in der Session den Pfad für die Lockdatei ändert". Kann das jemand nachholen?
Stehe gerade vorm gleichen Problem unter Win7.

Union 11. Okt 2011 10:58

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von DeddyH (Beitrag 1098393)
Seit Delphi 6 (IIRC) wird die BDE nicht mehr gepflegt, stattdessen soll/sollte man auf DBExpress umsteigen.

Aber es existieren noch massenhaft Anwendungen, bei denen die noch drin ist. Und aus Furcht etwas kaputtzumachen wurde nie mit der Umstellung angefangen. Irgendwo war heute auch ein Eintrag der sich mit W98 beschäftigte :wall:

Aber ob dbExpress das Richtige ist? Mit seiner Zugriffskette und Clientdataset? Für einen Umstieg von der BDE würde ich eher ADO bzw. DBGo empfehlen, das ist dann noch ziemlich ähnlich.

DeddyH 11. Okt 2011 11:04

AW: BDE Zugriff verweigert unter Vista
 
Das kam falsch rüber. Ich wollte eigentlich sagen, dass Borland damals DBExpress als bessere Alternative angepriesen hat.

stahli 11. Okt 2011 11:11

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von H4ndy (Beitrag 1129740)
Ich wärme das Thema ja nur ungern auf, aber keiner hat geschrieben wie man nun überhaupt
"in der Session den Pfad für die Lockdatei ändert". Kann das jemand nachholen?
Stehe gerade vorm gleichen Problem unter Win7.

Genau weiß ich es nicht mehr. M.E. war das in einer BDEAdmin.Exe einzustellen. Konkret kann ich es aber nicht mehr sagen.
Ich habe dann auf allen Clients die (ich glaube) IDAPI32.CFG auf allen Clients ersetzt (bin im Urlaub, daher kann ich jetzt nicht nachsehen) und so die Netzwerkeinstellungen auf den Clients angepasst.
Das mache ich seit Jahren so bei neuen Rechnern und stehe daher nicht mehr so in den Details...

Falls Du eine Lösung für 64Bit brauchst, dann schau mal hier.

Bernhard Geyer 11. Okt 2011 11:15

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von Union (Beitrag 1129746)
Für einen Umstieg von der BDE würde ich eher ADO bzw. DBGo empfehlen, das ist dann noch ziemlich ähnlich.

ADO/DBGo ist nur was für Access/MS SQL-Server.
Und so wie manche herausgefunden habe ist ADO auch schon wieder für MS gestorben. Als native Technik für diese beiden DB-Typen bleibt scheinbar nur ODBC übrig.

Union 11. Okt 2011 11:26

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

ADO/DBGo ist nur was für Access/MS SQL-Server
Es gibt OLEDB Treiber für jede Menge Datenbanken, u.a.:
- ADS
- Interbase
- FireBird
- Postgres
- SQLite
- MySQL

mkinzler 11. Okt 2011 11:34

AW: BDE Zugriff verweigert unter Vista
 
Aber nur bei Access/MSSQL würde ich diesen Weg bevorzugt gehen

jaenicke 11. Okt 2011 11:35

AW: BDE Zugriff verweigert unter Vista
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von H4ndy (Beitrag 1129740)
Ich wärme das Thema ja nur ungern auf, aber keiner hat geschrieben wie man nun überhaupt
"in der Session den Pfad für die Lockdatei ändert".

Um das NetDir zu setzen, einfach in der Systemsteuerung über die Suche nach bde das Konfigurationstool öffnen (dabei müssen Adminrechte angefordert werden, sonst fehlen die Kompatibilitätseinstellungen auf der bdeadmin.exe, die aber Windows 7 beim ersten Start automatisch vorschlägt):

Anhang 35347

Dieses und das private dir lassen sich auch in der Anwendung setzen:
Delphi-Quellcode:
  PrivateDir := IncludeTrailingBackslash(GetTempDirectory()) + IrgendeinPrefix +
    IntToStr(GetCurrentProcessId());
  Session.NetFileDir := GetCurrentDir();
  if CreateDir(PrivateDir) then
    Session.PrivateDir := IncludeTrailingBackslash(PrivateDir);
Wir packen die Prozess-ID in den Verzeichnisnamen, damit keine zwei Anwendungen auf das gleiche zeigen können. Alte Verzeichnisse mit diesem Prefix werden automatisch gelöscht.

Union 11. Okt 2011 11:37

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von mkinzler
Aber nur bei Access/MSSQL würde ich diesen Weg bevorzugt gehen

Dann bleiben ja eigentlich nur native Komponenten, womit man sich meist auf eine einzige DB festlegt. Wenn Embarcadero es nicht einmal schafft, die Demos und Tutorials zu DBExpress lauffähig bzw. aktuell zu halten, mit was für einer Unterstützung für dbExpress kann man dann in der Zukunft rechnen?

mkinzler 11. Okt 2011 11:40

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Dann bleiben ja eigentlich nur native Komponenten, womit man sich meist auf eine einzige DB festlegt.
Jein. Es gibt auch ZEOS, UniDAC, AnyDAC, bei welchen der native Zugriff abstahiert wird.

Union 11. Okt 2011 11:48

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von mkinzler (Beitrag 1129763)
Zitat:

sich meist auf eine einzige DB festlegt.
Es gibt auch ZEOS, UniDAC, AnyDAC, bei welchen der native Zugriff abstahiert wird.

Deshalb das meist ;)

H4ndy 11. Okt 2011 12:39

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von jaenicke (Beitrag 1129761)
Dieses und das private dir lassen sich auch in der Anwendung setzen:

Danke, die Lösung über Session.NetFileDir hab ich auch jetzt nach längere Google-Action gefunden.
Hier gibt es noch eine programgesteuerte Lösung die globale Einstellung permanent zu ändern:

http://edn.embarcadero.com/article/23231

p80286 11. Okt 2011 13:02

AW: BDE Zugriff verweigert unter Vista
 
Zitat:

Zitat von Union (Beitrag 1129755)
Zitat:

ADO/DBGo ist nur was für Access/MS SQL-Server
Es gibt OLEDB Treiber für jede Menge Datenbanken, u.a.:
- ADS
- Interbase
- FireBird
- Postgres
- SQLite
- MySQL

Oracle nicht zu vergessen.
Und wenn ein Client mit mehreren Datenbanken umgehen können soll, mit ADO meist kein Problem.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:10 Uhr.

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