Hallo zusammen,
ich habe bisher Funktionen die in mehreren Programmen gebraucht werden
einfach immer ins neue Projekt reinkopiert.
Jetzt hab ich erstmals versucht, eine Unit anzulegen die das übernehmen soll.
Trotz intensiver suche krieg ich das nicht so hin wie ich mir das vorstelle.
Vermutlich sitzt da das Problem einfach vor dem PC.
Von meinem Verständnis her ist die Unit die ich anlegen will nennen wir sie mal myfunctions.pas
eine einzelne .pas Datei.
Wenn ich aber versuche eine neue Unit anzulegen lande ich immer bei einem Programm mit oder ohne Gui. Oder einer DLL oder sonst was,
halt mit 2 Units.
Brauche ich immer die .lpi dazu?
Wie lege ich eine Unit an und speichere sie ohne eine Form1 bzw. gleich ein Projekt mit zu erstellen?
Ich habs zwar zum Laufen gebracht, scheint mir aber nicht ganz der richtige Weg zu sein.
Dabei hab ich ein "Programm" und eine zweite Unit "myfunctionU2" angelegt. Im Programm ist nur der automaisch erstelle Rumpf drin.
In der Unit myfunctionU2 sind meine Funktionen eingebaut. Wenn ich die Unit verwenden will,
muß ich in einem anderen Programm dann aber myfunctionU2 in uses einbinden und nicht die Hauptdatei myfunction.
Wie gehts richtig bzw. besser?
Mit bestem Dank im Voraus und schöne Ostern
NoCee
Einzelne Unit anlegen
- KoBraSoft
- Beiträge: 123
- Registriert: So 6. Jun 2021, 09:57
- OS, Lazarus, FPC: die zu Zeit aktuellen Versionen, überwiegend Linux
- CPU-Target: 64Bit 32 Bit
- Kontaktdaten:
Re: Einzelne Unit anlegen
Wie hast Du versucht eine neue Unit anzulegen? Ich vermute mit Projekt -> neues Projekt... ->NoCee hat geschrieben: Do 17. Apr 2025, 17:33 Von meinem Verständnis her ist die Unit die ich anlegen will nennen wir sie mal myfunctions.pas
eine einzelne .pas Datei.
Wenn ich aber versuche eine neue Unit anzulegen lande ich immer bei einem Programm mit oder ohne Gui. Oder einer DLL oder sonst was,
halt mit 2 Units.
Versuche mal: Datei -> neu... -> Pascal unit
NeinBrauche ich immer die .lpi dazu?
siehe obenWie lege ich eine Unit an und speichere sie ohne eine Form1 bzw. gleich ein Projekt mit zu erstellen?
Wie es richtig geht weis ich leider auch nichtWie gehts richtig bzw. besser?

Ich öffne die betreffende Unit im Editor und nehme die Unit in mein Projekt auf mit:Projekt -> Datei im Editor ins Projekt auf nehmen (Umschalt + F11)
Konrad
www.KoBraSoft.de
www.KoBraSoft.de
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1639
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Einzelne Unit anlegen
Wenn du eine Unit in mehreren Projekten verwenden willst, ist es am sinnvollsten, diese in einem Package unterzubringen. Dieses Package wird dann bei den betreffenden Projekten als Abhängigkeit eingetragen.
Siehe mein Beitrag hier
Siehe mein Beitrag hier
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Einzelne Unit anlegen
Genau dies mache ich auch immer so. Dann muss man sich nicht um die Pfade kümmern, in der die Units liegen.Wenn du eine Unit in mehreren Projekten verwenden willst, ist es am sinnvollsten, diese in einem Package unterzubringen. Dieses Package wird dann bei den betreffenden Projekten als Abhängigkeit eingetragen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 174
- Registriert: Do 3. Mär 2011, 21:34
- OS, Lazarus, FPC: WinXp/7/10 Opensuse13.2/Leap15.3 (L 2.2.0 FPC 3.2.2 )
- CPU-Target: Intel 32/64Bit, ARM9
- Wohnort: Ulm
Re: Einzelne Unit anlegen
Genau dies mache ich jetzt auch soGenau dies mache ich auch immer so. Dann muss man sich nicht um die Pfade kümmern, in der die Units liegen.

Hab da jetzt ne weile rumprobiert und habs mal grundsätzlich kapiert.
Zumindest funktionierts so wie ich das möchte.
Einzig was mir nicht wirklich klar ist, wenn ich schon das Package ins Projekt einbinde,
warum muß ich in Uses extra noch meine Unit eintragen wenn doch das Package wo die Unit zu finden ist bekannt ist.
Dann hätte ich noch eine Frage zu den Packages.
Wenn ich in meinem Projekt beim Kompilieren Debug Infos mit einkompiliere,
Macht Lazarus das dann für das Package auch so? Oder gilt das dann als "getestet" braucht man keine Debug-Infos.
Oder kann ich das etwa im Package separat steuern?
Vielen Dank für eure Unterstützung
Gruß
NoCee