udm.dfm kann nicht gelesen werden

Für Fragen rund um die Ide und zum Debugger
Antworten
schorsch
Beiträge: 46
Registriert: Sa 20. Mär 2010, 23:00
OS, Lazarus, FPC: Win10x64, RaspberryPi, MAC
CPU-Target: so ziemlich alles

udm.dfm kann nicht gelesen werden

Beitrag von schorsch »

moin @ALL,
ich hatte zuletzt meine Source etwas aufgeraeumt und damit auch einige "globale" Units in einen sep. ordner verschoben. das hat auch alles soweit geklappt, doch nun folgendes, seltsames..

beim oeffnen meines projekts in die laz-ide kommt o.g. fehler, der aber keinerlei auswirkungen aufs prog zu haben scheint. jedenfalls handelt es sich hierbei um mein datenmodell, das nun im verz. modules steht. das verz. habe ich in die projektpfade eingetragen, sodass auch alle anderen units gefunden werden - und da ist uebrigens auch mein datenmodul (udm.*). also mal alles durchforstet, ob irgendwo was mit delphi bla bla drin ist - aber nix - keine compilerschalter oder sonst irgendwelche angaben. und, wenn ich einfach mal ne neue kompo ins dm ziehe, dann werden die aenderungen auch schoen in der richtigen unit gespeichert - also im modules-verz.

jetzt habe ich einfach mal folgendes versucht: habe die .lfm und die .pas zus. ins alte Verzeichnis kopiert (wohlgemerkt .LFM! - nicht .dfm) und geoeffnet und tataa, es geht - ist aber ja nicht sinn der sache, woll.

dann dachte ich, dass das vielleicht damit zusammenhaengt, welche reiter in der die im projekt so alles standardmaessig geoeffnet werden - und da war das dm dabei. also geschlossen, projekt gespeichert und wieder versucht - selber fehler :-(

wenn ich jetzt hergehe und mach die Dateien als dummy-files (also nur ne zeile rein), dann meckert er, dass da keine klassendefinitionen drin waeren, hmm..

aber jetzt zu meiner eigentlichen frage: wo und wie finde ich denn die Datei(en), wo der ganze "projekt-krempel" (aehnlich Delphi .dproj) gespeichert wird? und wie heisst die? irgendwoher muss er doch wissen, welche reiter das projekt oeffnen muss, etc. aber finde nix :-(

p.s.: und, nein, nix wurde in Delphi gemacht - alles mit laz!

jemand ne Idee?? waere super..

de Schorsch
der feind der erde ist der mensch

schorsch
Beiträge: 46
Registriert: Sa 20. Mär 2010, 23:00
OS, Lazarus, FPC: Win10x64, RaspberryPi, MAC
CPU-Target: so ziemlich alles

Re: udm.dfm kann nicht gelesen werden

Beitrag von schorsch »

ich nochmal: also "aus dem projekt entfernen", speichern, schliessen, neu oeffnen und wieder neu hinzufuegen scheint zu funktionieren - auch, wenn ich die Dateien loesche, die er angeblich braucht - soweit, so gut. aber da tut sich ne andere frage auf:

gibt es eigentlich auch sowas, wie in Delphi "zum projekt hinzufuegen"? ich oeffen die Datei einfach immer und binde die ins uses ein - aber jetzt habe ich immer die kompletten pfadangaben, wenn ich zb "vom projekt entfernen" waehle. deshalb bleiben meine o.g. fragen erstmal aktuell ;-)

tks vorab...
der feind der erde ist der mensch

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: udm.dfm kann nicht gelesen werden

Beitrag von Michl »

Ich verstehe zwar nur die Hälfte von dem, was du geschrieben hast, aber die Projektoptionen befinden sich in der Project.lpi (besser ist es aber jeweils die Dateien in der IDE mittels "Datei -> Speichern unter ..." zu verschieben, dann werden automatisch alle Pfade etc. angepasst).

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

schorsch
Beiträge: 46
Registriert: Sa 20. Mär 2010, 23:00
OS, Lazarus, FPC: Win10x64, RaspberryPi, MAC
CPU-Target: so ziemlich alles

Re: udm.dfm kann nicht gelesen werden

Beitrag von schorsch »

das dachte ich ja eigentlich auch aber da steht zb ueberhaupt nix drin mit kompletten pfadangaben. auch nicht, welche reiter/units in der die zuletzt geoeffnet waren im projekt.

und was ich versucht habe zu beschreiben: stell dir vor ich habe eine unit eingebunden, die im selben pfad steht, wie das ganze prog. jetzt merke ich, dass ich die ja in mehreren Projekten verwenden sollte und will diese "umswitchen" nach zb "modules" (eigenes verz.). wie wurdest du das am sinnvollsten machen?
der feind der erde ist der mensch

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: udm.dfm kann nicht gelesen werden

Beitrag von wp_xyz »

schorsch hat geschrieben:gibt es eigentlich auch sowas, wie in Delphi "zum projekt hinzufuegen"?

Ich versteh zwar auch nix, aber das kann ich beantworten: Ja. Projekt-Inspektor öffnen (ist bei mir als tolle Navigationsmöglichkeit immer offen und an den rechten Rand geschoben und auf Bildschirmhöhe vergrößert). Da siehst du die Baumansicht mit "Dateien" und "Benötigte Packages". Auf den Pfeil neben "Hinzufügen" klicken > "Dateien aus dem Dateisystem hinzufügen" (oder Rechtsklick auf "Dateien", dann "Hinzufügen") und im Dateidialog die Datei(en) auswählen; die gehören dann zum Projekt. Ich füge immer alle Dateien dem Projekt hinzu, denn der Projekt-Inspektor kann hervorragend dazu verwendet werden, schnell per Doppelklick eine Projekt-Datei zu laden. Übrigens: Rechtsklick auf "Benötigte Packages" und "Hinzufügen" erlaubt, Packages dem Projekt hinzuzufügen.

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: udm.dfm kann nicht gelesen werden

Beitrag von Michl »

schorsch hat geschrieben: auch nicht, welche reiter/units in der die zuletzt geoeffnet waren im projekt
Nein, diese Info findest du in der Project.lps. Das Projekt lässt sich auch wunderbar ohne das File öffnen (z.B. kann man die Datei löschen, wenn man das Projekt teilen will).

schorsch hat geschrieben: jetzt merke ich, dass ich die ja in mehreren Projekten verwenden sollte und will diese "umswitchen" nach zb "modules" (eigenes verz.). wie wurdest du das am sinnvollsten machen?
Für sinnvolle "Tools" habe ich mir Packages gemacht. Kleinere "Helper" Units, die ich eigentlich nur für Tests benötige, liegen bei mir in einem separaten Verzeichnis. Diese kopiere ich ins Testprojektverzeichnis und nehme sie einfach in der Usesklausel auf.
Zuletzt geändert von Michl am Sa 17. Feb 2018, 23:19, insgesamt 1-mal geändert.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: udm.dfm kann nicht gelesen werden

Beitrag von wp_xyz »

schorsch hat geschrieben:und was ich versucht habe zu beschreiben: stell dir vor ich habe eine unit eingebunden, die im selben pfad steht, wie das ganze prog. jetzt merke ich, dass ich die ja in mehreren Projekten verwenden sollte und will diese "umswitchen" nach zb "modules" (eigenes verz.). wie wurdest du das am sinnvollsten machen?

Wenn die Datei im Editor aktiv ist, "Speichern unter" und in den "modules"-Ordner navigieren. Die Frage, ob alle (!) Referenzen angepasst werden sollen, bejahen, damit der neue Pfad gleich berücksichtigt wird. Die Frage, ob die alte Datei gelöscht werden, ebenfalls bestätigen - sonst hast du die Datei zweimal und wunderst dich, dass deine Änderungen an der Datei nicht berücksichtig werden, der Debugger falsche Zeilen anzeigt.

In den anderen Projekten so wie ich in der anderen Nachricht geschrieben habe, die Datei ins Projekt aufnehmen.

schorsch
Beiträge: 46
Registriert: Sa 20. Mär 2010, 23:00
OS, Lazarus, FPC: Win10x64, RaspberryPi, MAC
CPU-Target: so ziemlich alles

Re: udm.dfm kann nicht gelesen werden

Beitrag von schorsch »

na, das ist doch mal antworten - supi, danke, das hilft mir echt weiter! ich habe uebrigens meine Sicherung wieder zurueckgespielt, weil mein datenmodul irgendwie ueberhaupt nicht mehr wollte - war zwar alles da aber schutzverletzungen, sobald man eigenschaften zuweisen wollte :-(
ich probiere das morgen mal damit.

gute nacht und tks..
der feind der erde ist der mensch

Antworten