Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Bopi am April 04, 2020, 09:17:56

Titel: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 04, 2020, 09:17:56
Beim starten der App bleibt die App manchmal auf der ersten Zeile des Form_Open Events hängen mit der Meldung "Datei nicht gefunden". Dies passiert nicht immer, sondern ab und zu. Der Fehler lässt sich auch über das Form_Error Event nicht abfangen.
Durch komprimieren und neu starten verschwindet er meistens.
Kann mir jemand sagen woran das liegen könnte?
Win 10, Office 365
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: markusxy am April 04, 2020, 13:26:13
Das ist eine gute Frage.
Wenn zuvor nur ein Start Macro oder Code ausgeführt wird, könnte das auf ein fehlerhaftes Modul hinweisen.
Allerdings würde es mich dann wundern, wenn komprimieren funktioniert.

Verwendest du irgend welche Windows API's in der Anwendung?
Unsachgemäße Nutzung, oder falsche Deklarationen können zu solchen Problemen führen.
Aber das ist alles ein Stochern im Dunkeln.

Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 04, 2020, 15:04:39
Ich verwende API's. Aber dieser Fehler tritt beim "Welcome" Formular auf, d.h. bevor irgendetwas anderes läuft. Und der Fehler tritt auch nicht immer auf, sondern nur ab und zu. (sehr seltsam).
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: DF6GL am April 04, 2020, 15:12:14
Hallo,

Zitatsondern nur ab und zu.

was auf eine instabile Netzwerkverbindung hindeutet...

Das sollte genau analysiert werden.


Weiterhin:
-- In allen Modulköpfen "Option Explicit" hinzufügen, falls es fehlt.
-- Im VBE Debuggen/Kompilieren durchführen. Evtl. auftretende Fehler sind zu eliminieren.

Falls keine Besserung:
Alle Objekte aus der/den DB-Datei/en in neue leere DB-Dateien importieren
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 04, 2020, 15:19:15
Du meinst FE und BE?
FE habe ich schon gemacht. Danach hat es für ein paar Tage funktioniert, jetzt ist der Fehler wieder da. Ich verwende noch kein Netzwerk, bin ja erst am Entwickeln. BE und FE liegen in unterschiedlichen Verzeichnissen aber auf der selben HD.
Das Welcome Formular ist dafür da um die Verbindung zu kontrollieren plus ein paar weitere Funktionen.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: DF6GL am April 04, 2020, 15:20:17
Hallo,

ok, hast Du die weiteren Punkte durchgeführt?
Ich meine FE und BE
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 04, 2020, 15:57:29
Okay, ich habe die FE und die 3 BE alle neu erstellt. Jetzt startet es wieder wie gewünscht. Mal sehen für wie lange!
Danke für die Tips
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: ebs17 am April 04, 2020, 22:22:33
Zitat"Datei nicht gefunden"
Welche wäre es denn?

Wenn es eines der Backends betrifft: Die Pfade zu diesen werden bei Verknüpfung fest in eine Systemtabelle des Frontends eingetragen. Falls nun das Backend im Dateisystem verschoben wird, wird es nachfolgend nicht gefunden.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: MzKlMu am April 05, 2020, 01:26:39
Hallo,
Zitatich habe die FE und die 3 BE alle neu erstellt.
Wieso 3 BE ?
Im Regelfall benutzen mehrere FE ein BE.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 05, 2020, 07:11:21
Welche Datei? Das ist eine interessante Frage, auf die mir Access aber keine Antwort gibt. Ich habe in der MSysObjects alle Einträge überprüft und keine fehlenden Dateien gefunden. Alles ist okay. Das Verschieben, Löschen, Umbenennen wird alles im Programm abgefangen. Dies steuert das Welcome Formular, wenn es denn läuft!
Nach dem Neu erstellen der FE und BEs läuft es wieder stabil, ich hoffe es bleibt so aber es würde mich trotzdem interessieren was die Ursache für diesen Fehler ist.

Mehrere BE weil es sich um ein grösseres Projekt handelt mit mehreren Modulen. Sprich: nicht jeder Anwender hat für alles eine Berechtigung/Lizenz aber alle Module können untereinander komunizieren. Für jedes Modul gibt es ein BE. Da es auch noch Mandantenfähig ist, gibt es beliebig viele BE pro Modul wobei immer nur eines pro Mandant zur Laufzeit aktiv ist. Nicht ganz trivial aber spannend. Mein bisher komplexestes Projekt.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: ebs17 am April 05, 2020, 08:29:27
ZitatWelcome Formular, wenn es denn läuft!
Es sollte doch zu diesem Zeitpunkt übersichtlich sein, was alles mit Start dieses Formulars benutzt wird, einschließlich Verweise und per Late Binding benutzte Komponenten.

Daneben sollte so eine Datei mal dekompiliert werden, statt nur die Objekte (so wie sie sind) in eine neue Datei zu übernehmen. Daneben sollte man (übrigens gerne generell) fehlerfrei programmieren, also keine Fehler erzeugen und ignorieren, daneben Möglichkeiten des "Selbstabschießens" ermitteln und unterbinden.
Wenn man einen Fehler durch Reparieren/Komprimieren beseitigen kann, wird dieser kaum durch eine Spezifik der Installation von Betriebssystem und Access hervorgehen, sondern sehr viel wahrscheinlicher durch eigenes Tun.

ZitatNicht ganz trivial
Den eigenen Ansprüchen sollte man auch etwas gewachsen sein, schon mal in dem Bewusstsein zu wissen(?), was man tut. Andere ins Blaue raten zu lassen, passt da schlecht zusammen.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 05, 2020, 08:47:49
Das sind allgemeingültige Aussagen, welche ich unterstütze.
Wenn aber dieses Startformular bereits in der ersten Zeile hängen bleibt und auch das Form_Error event nichts bringt, wird es schwierig. Selbstverständlich kompiliere ich regelmässig. Jedes Modul, jedes Formular wird nach Bearbeitung kompiliert.
Was das "Erzeugen" von Fehlern anbelangt, ich glaube nicht, dass jemand bewusst Fehler erzeugt aber sie passieren halt. Die Fehlersuche ist ein Bestandteil des Programmierens.
Ich verwende eine gut funktionierende Fehlerroutine mit eigenen Fehlercodes wo immer angebracht und führe eine Log-Datei.
Auch wenn ich kein Guru bin, denke ich, dass ich durchaus weiss was ich tue. Aber manchmal stösst man halt auf ein Problem, dass das eigene Wissen übersteigt. Genau dann kann ein Forum sehr hifreich sein.
Ich will auch niemanden ins Blaue raten lassen, sondern denke einfach, dass hier Spezialisten versammelt sind, die mir weiterhelfen können.

Wie schon gesagt ist das Problem zur Zeit gelöst aber trotzdem weiss ich nicht was es ausgelöst hat.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: DF6GL am April 05, 2020, 08:53:07
Hallo,


noch eine Frage am Rande:

Hat jeder User (d. h. jeder PC, auf dem die DB laufen soll)  sein eigenes lokal kopiertes FE, welches er dann startet?

IMHO:  Solche "Datei nicht gefunden" Meldungen entstehen oft auch dann , wenn die DB irgendwo "zerschossen" ist.  Da wird es dann schwierig, die Situation durch Fehlerhandler oder sonstigen Code zu bereinigen. Natürlich muss der Code programmtechnisch dahingehend untersucht und korrigiert werden, wenn er sich als Ursache für das "Zerschießen" herausstellt.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: ebs17 am April 05, 2020, 09:21:41
ZitatSelbstverständlich kompiliere ich regelmässig.
Dekompilieren ist etwas anderes als ständig neu zu kompilieren, denn da werden alte Kompilate entfernt, die vielleicht nicht entfernt wurden.

ZitatWenn aber dieses Startformular bereits in der ersten Zeile hängen bleibt
Dann ist dieser Fehler reproduzierbar, wenn alleine das Formular in eine neue Datei verbracht wird und dabei bestmöglich (auf die erste Zeile) abgemagert wurde?

Diese neue Datei unter verschiedenen Versionskombinationen Windows/Access getestet?
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: markusxy am April 05, 2020, 10:05:59
Zitat von: Bopi am April 04, 2020, 15:19:15
Das Welcome Formular ist dafür da um die Verbindung zu kontrollieren plus ein paar weitere Funktionen.

Wie gesagt, würde ich davon ausgehen, dass das Problem bei den CodeModulen liegt.
Die Fehlermeldung kenne ich nur in diesem Zusammenhang.

Eine wesentliche Frage wäre, wie du die Kompilier-Optionen des VBA Projektes eingestellt hast.
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 06, 2020, 16:34:47
ZitatHat jeder User (d. h. jeder PC, auf dem die DB laufen soll)  sein eigenes lokal kopiertes FE, welches er dann startet?
Das ist die Idee. Bisher bin ich noch am programmieren, also gibt es nur eine FE.

ZitatWie gesagt, würde ich davon ausgehen, dass das Problem bei den CodeModulen liegt.
Dann werde ich mich noch weiter auf die Suche machen.

ZitatEine wesentliche Frage wäre, wie du die Kompilier-Optionen des VBA Projektes eingestellt hast.
Welche Einstellung interessiert dich?

ZitatDann ist dieser Fehler reproduzierbar, wenn alleine das Formular in eine neue Datei verbracht wird und dabei bestmöglich (auf die erste Zeile) abgemagert wurde?
Kannst Du mir das näher erläutern? Ich dachte, das Form_Open Event ist das erste das abgerufen wird. Willst du mir damit sagen, das vor diesem Event der Code der gesamten Form geprüft wird? Nur um das noch einmal zu erwähnen, der Code bleibt hier hängen (siehe Bild)
(//)
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Xoar am April 06, 2020, 16:52:21
Den Fehler hatte ich aus unerklärlichen Gründen auch schonmal. Bei mir half es ein Teil des Codes zu verändern, wenn auch unsinnig, kompilieren speichern und Datenbank beenden.

Dann erneut öffnen, den Code wieder korrigieren, kompilieren und speichern.

Kannst ja mal versuchen.

Bei mir hing der auch immer genau da und mit F5 lief alles ohne Probleme weiter.

Grüße
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: DF6GL am April 06, 2020, 17:07:57
Hallo,

dann zeig doch mal den kompletten Code der Form_Open-Prozedur..

Ich bin immer noch der Meinung, dass das VBA-Projekt als solches  korrumpiert ist/wird.

Der Access-Startparameter (Schalter) /DECOMPILE wäre auch in Betracht zu ziehen.

Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Bopi am April 07, 2020, 07:09:21
Der Hinweis auf Decompile hats gebracht!
Folgendes Prozedere hat den Fehler beseitigt: Starten mit /decompile bei gehaltener Shift Taste. Anschliessend kompilieren. Schliessen der Anwendung. Erneut starten ohne /decompile aber mit gehaltener Shift Taste. Wieder kompilieren, schliessen und normal starten. Jetzt läuft alles einwandfrei.
Vielen Dank für die Hinweise. Das war eine interessante Lektion die ich lernen durfte. Zum Glück können auch alte Semester wie ich noch was lernen.  ;)
Titel: Re: Fehler "Datei nicht gefunden"
Beitrag von: Beaker s.a. am April 07, 2020, 11:57:25
ZitatDer Hinweis auf Decompile hats gebracht!
Der auch schon in #10 gegeben wurde
ZitatDaneben sollte so eine Datei mal dekompiliert werden