![]() |
DFM Datei nicht gefunden
Hallo allerseits!
Ich hab da folgendes Problem: Beim Kompilieren werden die DFMs nicht gefunden. Füge ich den Ordner mit den Dateien im Suchpfad hinzu, dann klappt alles. Ich möchte aber nicht 50 Ordner im Suchpfad haben und eigentlich sollte es ja auch so funktionieren. Und an dieser Stelle wird es richtig kurios: Ich entferne einen der besagten Ordner aus dem Suchpfad: Fehler: E1026 Datei nicht gefunden: 'foobar.dfm' Wenn ich jetzt aber diese Datei mit dem Editor öffne, speichere und wieder schließe, dann kompiliert es ohne Probleme. Wenn ich vorher eine Kopie von der Datei gemacht habe, und die Dateien wieder austausche (nicht nochmal gespeicherte Datei ist jetzt im Zugriff) dann kommt wieder besagter Fehler. Ein Vergleich der beiden Dateien ergab folgendes Ergebnis: Beide genau gleich groß, beide verbrauchen den selben Speicherplatz, beide haben genau die gleichen System-Rechte, beide verwenden die gleiche Zeichenkodierung. (Was kann man noch vergleichen?) Ich habe echt keine Ahnung mehr, woran das noch liegen könnte! Hat von euch jemand eine Idee? |
AW: DFM Datei nicht gefunden
Liegen denn deine dfm-Dateien in einem anderen Ordner als die pas-Dateien? Wenn nicht, dann öffne mal den Projektquelltext und prüfe die Pfade dort.
|
AW: DFM Datei nicht gefunden
pas und dfm liegen in einem Ordner.
Ich muss die dfm wirklich nur mit notepad oder notepad++ öffnen und wieder speichern, dann klappt es. |
AW: DFM Datei nicht gefunden
Zitat:
|
AW: DFM Datei nicht gefunden
Manchmal zerhauts auch die uses-Liste im Projektquelltext (dpr-Datei), deswegen solltest du dort reinschauen.
|
AW: DFM Datei nicht gefunden
Der ist genauso identisch, soweit ich sehe. (Durch öffnen, speichern, schließen sollte in meinen Augen ja auch nichts am Inhalt geändert werden.....denke ich doch mal...)
|
AW: DFM Datei nicht gefunden
@baumina: Die habe ich in der Zwischenzeit nicht angefasst...
So unglaublich das auch klingt, es wird wirklich nur die dfm geöffnet und gespeichert. |
AW: DFM Datei nicht gefunden
Zitat:
DFMs können binär oder im TextFormat gespeichert werden, man kann die Codierungen ändern, das BOM oder es ist einfach irgendwo ein Byte futsch. Beim Öffnen wird die DFM geladen, Objekte werden erstellt (dabei können sich Property auch gern mal verändern, weil man z.B. ein neueres Delphi hat oder Komponenten aktualisiert wurden) und beim Speichern werden diese Objekte (Edits, Labels usw.) neu serialisiert und das dann gespeichert ... die DFM bekommt also einen komplett neu erstellten Inhalt. |
AW: DFM Datei nicht gefunden
Kann es sein, dass der Virenscanner hier dazwischenfunkt, so dass die Datei von eben diesem noch im Zugriff ist, wenn Delphi die Datei verwenden will?
MfG Dalai |
AW: DFM Datei nicht gefunden
Sind da die Zugriffsrechte im Filesystem geändert worden und die Compiler haben keine Rechte für die *.dfm?
|
AW: DFM Datei nicht gefunden
@himitsu:
Das sind DFMs im Textformat. Ich öffne sie auch nur mit notepad. Es werden also durch das Öffnen auch gar keine anderen Dateien beeinflusst... @Dalai: Das weiß ich nicht. Aber ich gehe nicht davon aus, da es sich immer um genau die gleichen Dateien handelt, die er nicht finden kann, bis ich sie öffne und wieder speichere... @Bambini: Das war auch mein erster Gedanke, aber die Rechte sind identisch. |
AW: DFM Datei nicht gefunden
Zitat:
MfG Dalai |
AW: DFM Datei nicht gefunden
Beim Umkopieren werden eventuell auch die Berechtigungen mit kopiert, also da kann schon was sein, wo die Delphi-IDE bei einer Datei keinen Zugriff hat.
Aber mal ganz einfach: Beide Dateien in eine ZIP und hier anhängen. (oder selber mit einem passenden Diff-Tool vergleichen) In unseren Augen sehen #32 und #160 auch gleich aus. Wenn es der Virenscanner ist, wüsste ich jetzt nicht, warum der sich bei beiden "gleichen" Dateien unterschiedlich verhalten sollte. Meistens sperrt der ja nur den Zugriff und versteckt die Datei nicht, womit also eine andere Fehlermeldung erscheinen sollte. Alternativ könnte es hier auch ein Problem mit dem VirtualStore geben, aber auch da sollte es sich nicht unterschiedlich verhalten, wenn man im selben Pfad eine zweier gleicher Dateien ablegt. |
AW: DFM Datei nicht gefunden
Hallo,
sind die DFMs doppelt im Dateisystem? Die Suchpfade kann man umgehen, wann man die Pas per "Datei hinzufügen" in die dpr reinbringt (nicht direkt reinschreiben). Das sind dann indirekte Suchpfade, weil der relative Pfad zur dpr mit eingetragen wird. Heiko |
AW: DFM Datei nicht gefunden
Vorab noch paar Infos:
- Es handelt sich hier um ein "etwas" größeres Projekt. Das Problem tritt aber nur bei einem Teilprogramm auf. - Ich glaube, ich habe mich an einer Stelle verschrieben: Ich öffne(, speichere) und schließe (kurz: öss) die zur DFM-gehörigen PAS-Datei. Ich konnte in der Zwischenzeit folgendes herausfinden: Was für mich erstmal nicht interessant war, ist die Änderungszeit der PAS Datei. Durch öss wird der Zeitstempel geändert. Wenn ich also diesen von allen betroffnen PAS ändere, kompiliert er ohne Probleme. Wenn ich jetzt aber das Hauptprojekt kompiliere, dann kompiliert das Nebenprogramm nicht mehr, weil er die DFMs nicht mehr findet. Die Zeitstempel der PAS sind jetzt älter als die der durch das Hauptprogramm entstandenen DCUs. Aber gerade dann sollte es doch klappen, weil er sieht "Oh, die DCUs sind neuer, dann nehme ich doch die!" und wenn die PAS neuer sind, sollte der Kompiler doch denken "Oh, es hat sich was an den PAS getan, dann muss ich die neu kompilieren!". Oder übersehe ich da gerade irgendwas? |
AW: DFM Datei nicht gefunden
Hallo,
was passiert denn bei einem kompletten Build (Shift+F9) ? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 Uhr. |
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