Announcement

Collapse
No announcement yet.

Exception EADSDatabaseError in Modul ....

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Exception EADSDatabaseError in Modul ....

    Ich habe eine Anwendung auf einem Win XP Rechner entwickelt wo sie auch einwandfrei läuft.
    Diese Anwendung hat 4 seperate Tabellen die nicht miteinander verknüpft sind.
    Jede Tabelle wird mit "ShowModal" seperat aufgerufen. Es können also auch nicht mehrere Tabellen gleichzeitig geöffnet werden.
    Wenn ich die EXE auf einem WIN 7 Rechner ausführe bekomme ich folgende Fehlermeldung.
    Exception EADSDatabaseError in Modul ArgeAdressen.EXE bei 000C1FBF.
    AdsTable1:Error 5004: Either ACE could not find the Specified file, or
    you do not sufficient access the file.

    Nach bestätigung durch OK erscheint diese Meldung.

    Format %p ungültig oder nicht kompatibel mit Argument.

    Eine andere Anwendung die ich auf dem gleiche Rechner entwickelt habe läuft auf dem Win 7 Rechner einwandfrei. Ich habe die ARGEAdressen Anwendung auseinander genommen und wieder zusammengesetzt aber keine Veränderung.
    Den Ländercode ist auch überall German.
    Ich stehe vor einem Rätsel.
    Die ALS Version ist 9.10.0.9 (ACE 9.10)

  • #2
    Du schreibst kaum etwas zu dem Fehler und den beteiligten Systemen (normales/fehlerhaftes Verhalten, Timing, IDE, DB-Treiber) also ein Schuss ins Blaue:
    Welche Bittigkeit haben die Systeme? Wird der Zugriff über einen vordefinierten Zugang (bspw. ODBC) ermöglicht oder ist er frei wählbar?
    Wenn es eine 32 Bit Anwendung ist und win 7 als 64 bit System läuft, hast Du den Datenzugriff evtl. (versehentlich) als 64 Bit Variante (default) angelegt.
    Falls es eine 64 bit Anwendung sein sollte, gilt das Problem auch umgekehrt.

    Im Code sollte man jedenfalls prüfen, ob die benötigten Treiber verfügbar sind.
    Das ganze ebenfalls auf dem Win 7 manuell feststellen.

    Ggf. einen 32 Bit Treiber installieren und entsprechende DSN oder was auch immer anlegen.
    Gruß, defo

    Comment


    • #3
      Alles ist 32 Bit. Nach dem Starten der EXE erscheint nach etwa 10 Sek. die von mir beschriebene Fehlermeldung. Warum Schuss ins Blaue? Datenbank ALS=Advantage Local Server von Extended Systems. V 9.10.0.9 (ACE 9.10)

      Nix ODBC oder so sondern mit ADSTable, ADSQuery, ADSConnection und TDataSurce.

      gruß hdd

      Comment


      • #4
        "ins Blaue", weil für mich aufgrund der Angaben mehr nicht drin ist.

        Selbst wenn es "alles 32 bit" ist:
        - IDE/Programmiersprache rate ich nun anhand der genannten Komponenten als Delphi Version xy
        - da ich das selbst in Betrieb habe, kann ich nur vermuten, dass es evtl nativer Zugriff oder OLEDB ist
        - wie die Datenquelle festgelegt wird, weiß ich immer noch nicht
        - an welcher Code Stelle der Fehler auftritt, Stichwort Debugging (und das hat gar nix im DB Forum verloren), erst recht nicht

        usw.

        Die Idee mit dem fehlenden Treiber (bzw. "falscher"-weil 64 statt 32 bit DSN) ist also nur eine Idee.
        Gruß, defo

        Comment


        • #5
          5004 heißt erstmal, dass der Client die angesprochene Datei nicht finden kann. Um welche Tabelle es sich handelt, kann man nur raten (der Name steht in AdsTable1.TableName).
          Falls es auf XP geht und auf Win7 nicht: eventuell falscher Pfad zur Datei? Oder aber die Tabellen in einem Verzeichnis, welches schreibgeschützt ist (C:\programme, c:\windows, ...)?
          Oder aber ein falscher Alias verwendet, welcher eben auf dem anderen Rechner ins Nirwana zeigt?
          Details, welche Datei wirklich geöffnet werden soll, findet sich in der errorlog (ads_err.adt).

          Comment


          • #6
            Win XP Pro / Win 7 Pro, Delphi 6 Pro.
            Die Anwendung läuft nun auf allen Rechnern einwandfrei. Warum das vorher nicht so war ist mir schleierhaft. Ich habe aus allen Formularen die Zugriff- und Steuerkomponenten entfernt und dann das Prog Compiliert. Anschließend habe ich die beiden Avantage und die DataSurce von Delphi wieder Eingebaut. Und siehe da alles klar. Einen Alias lege ich nicht an da ich im Anwendungsverzeichnis ein Unterverzeichnis für die Tabellen anlege. Als ConnectPath gebe ich dann zB. ".\DATA" an. Wobei DATA das Unterverzeichniss für die Tabellen ist.
            Danke für die Hilfe und bis dann mal.
            HDD

            Comment

            Working...
            X