AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Unterschied "Erzeugen" und "Compilieren" - Einstellungen
Thema durchsuchen
Ansicht
Themen-Optionen

Unterschied "Erzeugen" und "Compilieren" - Einstellungen

Ein Thema von haentschman · begonnen am 14. Aug 2025 · letzter Beitrag vom 18. Aug 2025
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.590 Beiträge
 
Delphi 12 Athens
 
#1

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 16. Aug 2025, 19:24
Namespaces sind das im Delphi eigentlich nicht wirklich.

Die Units heißen wirklich Vcl.Forms.pas und Fmx.Forms.pas,
aber in den Projektoptionen gibt es "Default-Namespaces".

Wird eine Unit in Uses, z.B. Forms (Forms.pas) nicht gefunden, dann wird nacheinader die Default-Namespaces durchgegangen, und Dateien mit diesen Präfixen gesucht.


PS: Darum kann es z.B. auch Probleme geben, wenn man Fremd-Units nutzt, oder die DPROJ gelöscht hatte.
Wenn im Projekt ein Namespace fehlt, dann wird diese Datei nicht mehr gefunden,
weil z.B. eine neugenerierte .DPROJ andere Optionen (Defaultnamespaces) haben kann, als die alte DPROJ, welche aus einer Codevorlage (Neue VCL-Anwendung) erstellt wurde,
ebenso bei DPROJ aus anderen/alten Delphi-Versionen.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (16. Aug 2025 um 19:40 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.474 Beiträge
 
Delphi 12 Athens
 
#2

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 17. Aug 2025, 09:36
Moin...

Sodele...

Ich habe das Projekt komplett von 0 neu angelegt.

Fazit:
1. compilieren = ok, erzeugen = 105 (Runtime) (mit hinzugefügter Unit, ohne Unit -> erzeugen + Start = ok)

Test neues Projekt als Dienst:
1. compilieren = installiert/gestartet, erzeugen = installiert/gestartet

Wer will, dann müßte ich das Projekt mit den kompletten Units zippen weil die x.Preferences wieder andere Units referenzieren.
Angehängte Grafiken
Dateityp: png XData1.PNG (26,3 KB, 31x aufgerufen)
Dateityp: png XData2.PNG (15,1 KB, 28x aufgerufen)
Dateityp: png XData3.PNG (15,6 KB, 24x aufgerufen)
Dateityp: png XData4.PNG (14,4 KB, 22x aufgerufen)
Dateityp: png XData5_VCL.PNG (10,9 KB, 23x aufgerufen)
Dateityp: png XData6_Dienst.PNG (44,5 KB, 20x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.785 Beiträge
 
Delphi 12 Athens
 
#3

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 17. Aug 2025, 10:28
Wer will, dann müßte ich das Projekt mit den kompletten Units zippen weil die x.Preferences wieder andere Units referenzieren.
Du hast ja meine Adresse. Bin aber heute nicht zuhause.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.474 Beiträge
 
Delphi 12 Athens
 
#4

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 17. Aug 2025, 11:10
@Uwe: Danke Ich stelle das morgen zusammen. Dann bin ich 3 Tage nicht im Lande...hat keine Eile.

Ist aber ein interessantes Phänomen...


Geändert von haentschman (17. Aug 2025 um 11:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.590 Beiträge
 
Delphi 12 Athens
 
#5

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 17. Aug 2025, 11:56
Zitat:
1. compilieren = ok, erzeugen = 105 (Runtime) (mit hinzugefügter Unit, ohne Unit -> erzeugen + Start = ok)
* kompilieren, starten, ok
* erzeugen, starten, peng
* nochmal kompilieren, starten, immernoch peng?

Wenn man z.B. für alle Configs dasselbe Ausgabeverzeichnis nutzt ....

* von Release auf Debug umschalten
* kompilieren, starten, ok
* erzeugen, starten, peng
Die Unit mit dem abweichenden $IFDEF DEBUG wurde beim ersten Mal nicht neu kompiliert, also stand das noch auf Release

Zitat:
Du hast ja meine Adresse.
Na dann kann ich mich ja endlich mal um mein Drehbuch kümmern.
Echt mal, niemand will mich ablenken?


Das mit dem Framework .... könnte man als eine versteckte Option in der DPROJ ansehn.
Die Konsolen-Anwendung hat erstmal kein Framework zugewiesen.

Es ist auch eher für den Form-Designer wichtig.
Darüber werden z.B. Komponenten in der Komponentenpalette ein-/ausgeblendet, die für jenes, bzw. "nur" für andere Frameworks vorgesehn sind (VCL/FMX/...)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (17. Aug 2025 um 12:02 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.474 Beiträge
 
Delphi 12 Athens
 
#6

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 18. Aug 2025, 05:20
Moin...
Zitat:
nochmal kompilieren, starten, immernoch peng?
...ja. Erst mit Beenden und Neustart des Projektes und dann Kompilieren = ok.
Zitat:
Wenn man z.B. für alle Configs dasselbe Ausgabeverzeichnis nutzt
...nein, getrennt.
Zitat:
Die Unit mit dem abweichenden $IFDEF DEBUG wurde beim ersten Mal nicht neu kompiliert, also stand das noch auf Release
...es macht in dem neuen Testprojekt auch peng OHNE das IFDEF.

PS: Ich hatte ein Video gemacht...das Forum läßt nur 5MB zu. Waren aber 10MB... https://19016etf-my.sharepoint.com/:...kifX0&e=Gw6myG


Geändert von haentschman (18. Aug 2025 um 05:31 Uhr)
  Mit Zitat antworten Zitat
Kas Ob.

Registriert seit: 3. Sep 2023
465 Beiträge
 
#7

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 18. Aug 2025, 07:09
PS: Ich hatte ein Video gemacht...das Forum läßt nur 5MB zu. Waren aber 10MB... https://19016etf-my.sharepoint.com/:...kifX0&e=Gw6myG

Well, to me that looks like broken linker, not the compiler as it compile it from already built dcu and it works fine, so the linker most likely has uninitialized variable somewhere, for the first run builds fine, the next is broken, (like something for the first run was zero but later build it is not cleared)

May be a step to confirm the linker involvement, (see the translation form English is "Difference between "Create" and "Compile" - Settings" and i don't have such thing as create !)
1) drop the project and click compile
2) make sure it runs
3) in the dpr file, add a space in the source, just to mark the file as changed and force the compiler to rebuild it, we need the compiler to compile/build only the dpr file.
4) click compile not "Erzeugen"
5) Will it run fine ? or it will be broken ?

Also and it is highly important and might be helpful, copy the 2 EXEs and keep them for later to compare to see what went wrong with the linker.
Kas
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.590 Beiträge
 
Delphi 12 Athens
 
#8

AW: Unterschied "Erzeugen" und "Compilieren" - Einstellungen

  Alt 18. Aug 2025, 13:00
...ja. Erst mit Beenden und Neustart des Projektes und dann Kompilieren = ok.
Dann kann es wirklich so ein beschissener Cache in der IDE sein.

Ich hab das Problem bei umkopierten Packages.
* in ein Verzeichnis kompilieren (das Verzeichnis, wo die IDE das Package lädt)
* im AfterBuildScript umkopieren (in ein Run-Verzeichnis, wo die EXE liegt)
* beim Debuggen meint das Log "Package XYZ geladen, mit Debuginfo", aber das ist eine Lüge
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 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