Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Softwareproblem =>Datei '(unbekannt)' nicht gefunden (https://www.delphipraxis.net/62001-softwareproblem-%3D-datei-unbekannt-nicht-gefunden.html)

bennle 29. Jan 2006 14:50

Datenbank: ADO • Zugriff über: DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=./xx.mdb

Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Hallo,
Ich habe eine Software geschrieben, welche ich nun an einen Kunden weiter gegeben habe.

Dieser meldet mir allerdings, dass er den Fehler "[Microsoft][ODBC Microsoft Access Driver] Datei '(unbekannt)'
nicht gefunden" erhällt. Bei mir läuft das Programm aber einbandfrei.

Ich habe auch schon prüfen lassen, ob die Datei auch wirklich vorhanden ist.

Kann mir jemand erklären warum dieser Fehler auftritt?

MfG
Bennle

Bernhard Geyer 29. Jan 2006 14:59

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Erstens ist deine Angaben bezüglich Datenbank (ADO) und Zugriff über (DRIVER=...) vollkommmen falsch.

Ich vermute mal das du über ADO (= Zugriff) und einen ODBC-Eintrag (ist hier vollkommen unnötig) auf eine Access-Datenbank zugreifst.

Du kannst aber direkt per ADO(Express) auf eine Access-Datenbank zugreifen wie es in diesem Tutorial beschrieben ist.

bennle 29. Jan 2006 15:08

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Bernhard Geyer
Erstens ist deine Angaben bezüglich Datenbank (ADO) und Zugriff über (DRIVER=...) vollkommmen falsch.

Ich vermute mal das du über ADO (= Zugriff) und einen ODBC-Eintrag (ist hier vollkommen unnötig) auf eine Access-Datenbank zugreifst.

Du kannst aber direkt per ADO(Express) auf eine Access-Datenbank zugreifen wie es in diesem Tutorial beschrieben ist.

Hmm Dann bekomm ich aber einen Fehler! (siehe bild im Anhang)

Ich rufe folgende SQL auf "ADOQuery1.SQL.Text:='SELECT * FROM test;';"

MFG
Bennle

Bernhard Geyer 29. Jan 2006 15:14

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
dann hast Du wohl einen Syntaxfehler :-)
Bei ADO(Express) ist es eh besser TADODataset statt TADOTable oder TADOQuery zu nehmen.

M$ war so "geschickt" das je nach Zugriffsweg (DAO/ODBC/ADO) die Syntax sich unterscheidet.
Also mußt du deinen SQL-Code evtl. anpassen.

bennle 29. Jan 2006 15:24

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von Bernhard Geyer
dann hast Du wohl einen Syntaxfehler :-)
Bei ADO(Express) ist es eh besser TADODataset statt TADOTable oder TADOQuery zu nehmen.

M$ war so "geschickt" das je nach Zugriffsweg (DAO/ODBC/ADO) die Syntax sich unterscheidet.
Also mußt du deinen SQL-Code evtl. anpassen.

Hmm
komisch! Wie muss ich den denn anpassen? Es hat doch vorher funktioniert nur durch die Umstellung funktioniert es wieder mal nicht!

MfG
Bennle

bennle 29. Jan 2006 16:25

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von Bernhard Geyer
dann hast Du wohl einen Syntaxfehler :-)
Bei ADO(Express) ist es eh besser TADODataset statt TADOTable oder TADOQuery zu nehmen.

M$ war so "geschickt" das je nach Zugriffsweg (DAO/ODBC/ADO) die Syntax sich unterscheidet.
Also mußt du deinen SQL-Code evtl. anpassen.

Wie musst denn der Syntax aussehen, wenn ich Daten abfragen möchte?

marabu 29. Jan 2006 16:58

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Lass doch mal das Semikolon am Ende deines SQL-Statements weg.

Grüße vom marabu

bennle 29. Jan 2006 17:00

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von marabu
Lass doch mal das Semikolon am Ende deines SQL-Statements weg.

Grüße vom marabu

Hab ich auch schon versucht, allerdings ohne Erfolg!

MfG
Bennle

marabu 29. Jan 2006 17:12

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Wenn das Programm bei dir läuft und auf der Zielmaschine nicht, dann wird es an der Art liegen, wie du den Speicherort der Datei angibst. Prüfe mal mit FileExists('.\xx.mdb'), ob die Datenbank auch an der erwarteten Stelle liegt.

marabu

bennle 29. Jan 2006 17:17

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von marabu
Wenn das Programm bei dir läuft und auf der Zielmaschine nicht, dann wird es an der Art liegen, wie du den Speicherort der Datei angibst. Prüfe mal mit FileExists('.\xx.mdb'), ob die Datenbank auch an der erwarteten Stelle liegt.

marabu

Hab ich gemacht, und das ist leider auch der Fall.
Ich hab jetzt allerdings mal den Kunden gefragt ob er Access besitzt! (Er hat Access 2002 drauf mit allen Updates) Ich vermute auf den ODBC Treiber!

Kann das sein?

Und braucht der Verbraucher denn Access überhaupt?

marabu 29. Jan 2006 17:24

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Die Schreibweise mit dem Punkt ist ein relativer Pfadname. Wenn der Kunde das Programm über eine Verknüpfung startet und dort ein abweichendes Arbeitsverzeichnis angibt, dann wird die Datei nicht gefunden.

Zitat:

Zitat von bennle
Und braucht der Verbraucher denn Access überhaupt?

Nicht das Vollprodukt, nur den Treiber.

marabu

bennle 29. Jan 2006 17:33

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von marabu
Die Schreibweise mit dem Punkt ist ein relativer Pfadname. Wenn der Kunde das Programm über eine Verknüpfung startet und dort ein abweichendes Arbeitsverzeichnis angibt, dann wird die Datei nicht gefunden.

Zitat:

Zitat von bennle
Und braucht der Verbraucher denn Access überhaupt?

Nicht das Vollprodukt, nur den Treiber.

marabu

Hallo,
Stimmt ich habs mal Probiert! Über eine Verknüpfung funktioniert es nicht! Naja jetzt hoffe ich nur das es beim Kunden genauso ist!

Wird der Treiber standartmäßig mitgeliefert zu Win---- oder nicht?
Wenn nicht, wo kann man diesen beziehen, wenn man kein Vollprodukt besitzt?

MfG
Bennle

PS: Danke schonmal für die evtl Fehleranalyse

marabu 29. Jan 2006 18:01

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Der von deinem Programm benötigte Treiber sollte JET for OLE DB sein - wenn er nicht auf der Zielmaschine drauf ist, dann sollte eine MDAC Installation genügen. Nur eine Vermutung. Ich arbeite nicht mit Access.

marabu

bennle 30. Jan 2006 19:01

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von marabu
Die Schreibweise mit dem Punkt ist ein relativer Pfadname. Wenn der Kunde das Programm über eine Verknüpfung startet und dort ein abweichendes Arbeitsverzeichnis angibt, dann wird die Datei nicht gefunden.

Zitat:

Zitat von bennle
Und braucht der Verbraucher denn Access überhaupt?

Nicht das Vollprodukt, nur den Treiber.

marabu

Hallo,
Wie kann ich das Problem in den Griff bekommen mit dem relativem Pfadname ohne dass ich einen festen Ort angebe.

MfG
Bennle

Bernhard Geyer 31. Jan 2006 06:58

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Zitat:

Zitat von marabu
.. dann sollte eine MDAC Installation genügen.

War früher der Fall. In aktuellen Versionen von MDAC ist keine JET-Engine mehr dabei sondern ein gesonderter Update-Installer. Dies ist aktuell noch kein Problem da jedes aktuell BS-System (XP/2003) den Treiber schon mitliefert. Bei XP-Embedded ist dies ein Problem da man die Jet-Engine bei der Einrichtung abwählen kann und man keine Möglichkeit mehr hat (außer Access-Vollinstallation) die Jet-Engine zu installieren.

Zitat:

Zitat von bennle
Wie kann ich das Problem in den Griff bekommen mit dem relativem Pfadname ohne dass ich einen festen Ort angebe.

Flexible ADO-Connection zur Ansteuerung einer Access-Datenbank

bennle 31. Jan 2006 18:39

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Also ich habe jetzt viel rum probiert, allerdings bekomm ich es nicht zum laufen, wenn ich den Jet Treiber wähle.

Kann mir vielleicht jemand ein kurzes Beispiel zum auslesen meiner Tabelle Test posten. (Bitte mit DataSet)

Danke! Bin wirklich am verzweifeln.

MfG
Bennle

marabu 31. Jan 2006 19:03

Re: Softwareproblem =>Datei '(unbekannt)' nicht gefunden
 
Vielleicht möchtest du dir eine kleine Demo ansehen, in der ich die Verwendung einer UDL-Datei zeige: klick

marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:16 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