Ich bekomme, wenn ich mit Lazarus (Version 2.2.6) eine alte Version meines Projektes öffne, eine Fehlermeldung.
"Kann die Komponentenklasse TDataSource nicht finden. Sie ist nicht mittel RegisterClass registriert und keine lfm wurde gefunden! Sie wird benötigt von Unit: und dann folgt ein Pfad zu meiner projekt_main.pas Datei, wo ich den Typ auch benutze".
Aber: Das Projekt compiliert und ich kann eine EXE erstellen, welches auch läuft. Was habe ich übersehen/falsch gemacht? Muß ich eine Einstellung in meiner IDE machen oder ist mein Projekt kaputt? Ich habe schon gesucht, u.a. im Projektinspektor, keine Spur. Ich habe das damals mit einem älteren Lazarus gemacht, ist der Umstieg auf 2.2.6 eventuell nicht sauber von mir passiert? Ich bekomme auch bei einem anderen Programm jetzt Warnings bei einer fgl Unit, die vorher nicht da waren.
EIner der Nachfolger des Projektes (mit dem Datasource) lädt ohne Fehlermeldung. Ich weiß aber nicht, was da anders sein sollte. Kann ich Projekt oder IDE nicht automatisch bereinigen lassen, wenn was fehlt oder zu viel ist?
Unklarer Fehler beim Laden von Projekt
Re: Unklarer Fehler beim Laden von Projekt
P.S. Ein anderer Fehler tritt noch auf. Bei dieser Unit/diesem Fenster kann ich nicht per F12 zwischen Quelltext und Formular-Ansicht umschalten? Dann kommt die gleiche Fehlermeldung wie beim Start/Laden. Sieht mir so aus, als wenn da eines meiner verwendten Icons/Ressourcen fehlt. Aber warum? Und wieso ist das projektspezifisch? Ich finde das ominös... Und ich möchte doch bloß meine alten Projekte archivieren und dabei von debug-dicke Exe auf nicht-debug umstellen. Heul....
Re: Unklarer Fehler beim Laden von Projekt
Das hatte ich gelegentlich auch einige Zeit lang. Öffne die lfm-Datei in einem Editor und schaue dir die Schreibweise von "TDataSource" an. Steht da "TDataSource" oder "TDatasource" (mit großem oder kleinem "s")? Ich weiß nicht mehr was richtig ist, aber ändere das "s" mal in die andere Schreibweise und versuche nochmal, die Datei in der IDE zu öffnen.alfware17 hat geschrieben: Mo 8. Mai 2023, 15:35 "Kann die Komponentenklasse TDataSource nicht finden. Sie ist nicht mittel RegisterClass registriert und keine lfm wurde gefunden! Sie wird benötigt von Unit: und dann folgt ein Pfad zu meiner projekt_main.pas Datei, wo ich den Typ auch benutze".
Re: Unklarer Fehler beim Laden von Projekt
Danke für die schnelle Antwort, ja das war es. Es muß ein großes S sein TDataSource. In der lfm-Datei und auch noch in der pas-Datei war es verkehrt bei mir, und ich habe nur einen speziellen PC und ein gewisses Linux in Verdacht, seitdem ich das drin hatte (in ca 30 Versionen/Ordnern, bäh...).wp_xyz hat geschrieben: Mo 8. Mai 2023, 16:30Das hatte ich gelegentlich auch einige Zeit lang. Öffne die lfm-Datei in einem Editor und schaue dir die Schreibweise von "TDataSource" an. Steht da "TDataSource" oder "TDatasource" (mit großem oder kleinem "s")? Ich weiß nicht mehr was richtig ist, aber ändere das "s" mal in die andere Schreibweise und versuche nochmal, die Datei in der IDE zu öffnen.alfware17 hat geschrieben: Mo 8. Mai 2023, 15:35 "Kann die Komponentenklasse TDataSource nicht finden. Sie ist nicht mittel RegisterClass registriert und keine lfm wurde gefunden! Sie wird benötigt von Unit: und dann folgt ein Pfad zu meiner projekt_main.pas Datei, wo ich den Typ auch benutze".
-
- Lazarusforum e. V.
- Beiträge: 280
- Registriert: Sa 26. Mai 2012, 17:31
- OS, Lazarus, FPC: Win 10 (L 2.2.6 x64 FPC 3.2.2)
- CPU-Target: 64Bit
Re: Unklarer Fehler beim Laden von Projekt
Unter Windows (?) würde ich das ganze mit ner Batch-Datei erledigen:
sed für Windows gibts unter https://gnuwin32.sourceforge.net/packages/sed.htm
Wenn Linux, dann halt 'n Shell-Script
PS: sed schreibt Sicherheitsdateien; dafür dann das DEL sed*
Code: Alles auswählen
SET such='TDatasource'
SET ersetz='TDataSource'
FOR %%d in (*.lfm) do f:\Tools\sed\sed.exe -i "s/%such%/%ersetz%/g" %%d
rem DEL sed*
Wenn Linux, dann halt 'n Shell-Script
PS: sed schreibt Sicherheitsdateien; dafür dann das DEL sed*
just my two Beer