AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Versionsinformationen werden nicht mit in die Exe übernommen
Thema durchsuchen
Ansicht
Themen-Optionen

Versionsinformationen werden nicht mit in die Exe übernommen

Ein Thema von jensw_2000 · begonnen am 29. Okt 2014 · letzter Beitrag vom 6. Sep 2024
Antwort Antwort
Seite 1 von 2  1 2      
galych

Registriert seit: 19. Aug 2024
9 Beiträge
 
#1

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 07:45
Leute, vielen lieben Dank!
Datei .res war schuld. Zusätzlich zu .res-Datei, die jedes mal neu erstellt wird, hatte ich im Hauptverzeichnis des Projekts noch eine. Anscheinend schleppe ich sie seit 2 Versionen schon mit, wie auch immer es dazu kam. Und da ich normalerweise bei der Entwicklung auf die Version nicht achte, war es mir nur in der neueren Version aufgefallen, als ich versucht habe, mit dem Server der Version zu arbeiten.

Nochmals vielen Dank! Hätte ich nur schon früher in diesem Forum nachgefragt
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 09:18
Falsche Sprache der Ressource?

* in der DPROJ schauen, ob/wo es die VersionsInfos gibt (hier am Besten nur in der Base/Basis-Config)

* normal wird vor dem Compilieren des Codes die Info der Projektoption in die *.res syncronisiert
* * hier kann man z.B. mit dem ResourceHacker (irgendeinem Ressourcen-Editor, welcher RES-Dateien versteht) in die *.RES schauen

* geschaut, ob der Compiler/Linker etwas bezüglich Ressoucen-Konfliken rummeckert? (Compiler-Log)

* mit dem ResourceHacker kann man nachfolgend auch in der EXE nachsehn, ob und wie dort diese Versions-Ressource aussieht

[edit]
Zitat:
hatte ich im Hauptverzeichnis des Projekts noch eine
ja nee, siehe das FETTE.

Warum hört NIE jemand darauf, was Delphi einem sagt?
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.735 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 09:54
Warum hört NIE jemand darauf, was Delphi einem sagt?
Weil die meisten Delphi-Entwickler Männer sind, und die hören ja bekanntlich nie zu.

Ernsthaft: Diese Meldung geht in dem ganzen Wust der Ausgaben schnell unter. Und da viele auch Compiler-Warnings und Hints nicht beheben, sind sie darauf trainiert, sowas zu ignorieren.
Thomas Mueller
  Mit Zitat antworten Zitat
galych

Registriert seit: 19. Aug 2024
9 Beiträge
 
#4

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 10:03
Weil die meisten Delphi-Entwickler Männer sind, und die hören ja bekanntlich nie zu.
Nun, ich bin kein Mann, aber ich habe schlechte Angewohnheit nur auf Fehlermeldungen zu reagieren. Meistens geht es gut.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#5

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 10:06
[QUOTE=dummzeuch;1539992]
Ernsthaft: Diese Meldung geht in dem ganzen Wust der Ausgaben schnell unter. Und da viele auch Compiler-Warnings und Hints nicht beheben, sind sie darauf trainiert, sowas zu ignorieren.
Naja, die Hinweise und Warnungen ändern sich aber auch gelegentlich. Ich habe früher auch schon initiale Werte zugewiesen, um "Variable X wurde möglicherweise nicht initialisiert"-Meldungen loszuwerden. In späteren Versionen hieß es aber dann "Auf X zugewiesener Wert wird niemals benutzt". Ich habe dann auch schon Conditional Defines eingebaut, aber das kann es ja nicht sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
2.059 Beiträge
 
Delphi 12 Athens
 
#6

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 10:11
Ernsthaft: Diese Meldung geht in dem ganzen Wust der Ausgaben schnell unter. Und da viele auch Compiler-Warnings und Hints nicht beheben, sind sie darauf trainiert, sowas zu ignorieren.
Delphi-Quellcode:
Function test(a:boolean):string;
Begin
  If a then
    result := 'yo'
  else
    result := 'no';
end;
"Das Ergebnis der Funktion ist möglicherweise undefiniert"
Kann man diese Meldung verhindern ohne result zu intialisieren?

Es geht mir NICHT um genau diese funktion, sondern die compiler warnings zu verhindern in fällen wo ich weiß was da passiert.
Mit "reintroduce" werden auch Warnungen dass die Sichtbarkeit einer Methode überschrieben wird, oder so, verhindert.
Sowas will ich eigentlich für einige compiler warnings.

EDIT:
Naja, die Hinweise und Warnungen ändern sich aber auch gelegentlich. Ich habe früher auch schon initiale Werte zugewiesen, um "Variable X wurde möglicherweise nicht initialisiert"-Meldungen loszuwerden. In späteren Versionen hieß es aber dann "Auf X zugewiesener Wert wird niemals benutzt". Ich habe dann auch schon Conditional Defines eingebaut, aber das kann es ja nicht sein.
Zwei doofe ein Gedanke?
Andreas
Nobody goes there anymore. It's too crowded!

Geändert von QuickAndDirty (20. Aug 2024 um 10:15 Uhr)
  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
 
#7

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 11:39
Delphi-Quellcode:
Function test(a:boolean):string;
Begin
  If a then
    result := 'yo'
  else
    result := 'no';
end;
"Das Ergebnis der Funktion ist möglicherweise undefiniert"
Kann man diese Meldung verhindern ohne result zu intialisieren?
Gerade dieses Beispiel erzeugt eben keine Warnung, da ein string-Result immer initialisiert ist. Aber auch mit einem Integer als Rückgabe kommt zumindest unter Delphi 12 keine.

Es gibt aber schon eine Möglichkeit, eine solche Warnung lokal zu unterdrücken ohne die gleich ganz abzuschalten:
Delphi-Quellcode:
{$WARN NO_RETVAL OFF}
Function test(a:boolean):Integer;
Begin
  If a then
    result := 1;
end;
{$WARN NO_RETVAL DEFAULT}
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 13:14
Wobei der Integer in dem Fall des Integers halt wirklich nicht initialisiert sein kann
und beim nichtvorhandenen ELSE zufällig sein kann.

Andersrum ist es schlimmer.
Per se ist der Result als String immer initialisiert, aber nicht in der Funktion, sondern beim Aufrufer, wo er dann z.B. in einer Schleife initial nicht '' sein kann.
Bei gemanagten Typen wird "intern" aus dem Result ein OUT- VAR-Parameter und außerdem sind gemangte Typen immer mit "0" initialisiert. (WideString, LongString, Variant, dynamische Array, Interface und ordentlich geschriebene Custom-Managed-Records)
Delphi-Quellcode:
function Test(a: Boolean): String;
// wird zu
procedure Test(a: Boolean; var Result: String);

Wir hatten im XE einen Fall, wo sich der Compiler in einer Verschachtelung aus Try-Finally, Try-Except, If-Then-Else-If-Then-Else-If-Then-Else-... und Case mit Exit und Abort/Raise durcheinander kam
und nachfolgend meinte die lokale Integervariable könne uninitialisiert sein, drum wurde dort ein :=0 am Anfang eingefügt, was dann D10+ aber anders sah und richtig erkannte, dass bis zur Auswertung es in allen Pfaden gesetzt wird, oder es via Exit/Raise vorher rausspringt.


Im Windows64-Compiler gibt es jetzt teilweise Zustände, wo ein Boolean-Result immer automatisch initialisiert ist scheint ... nja, wenn du schaust immmer, aber eigentlich fast immer, weil du zufällig den einen Abweichenden von Tausenden/Millionen Durchgängen nicht siehst.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (20. Aug 2024 um 13:25 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
2.059 Beiträge
 
Delphi 12 Athens
 
#9

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 13:45
Es gibt aber schon eine Möglichkeit, eine solche Warnung lokal zu unterdrücken ohne die gleich ganz abzuschalten:
Delphi-Quellcode:
{$WARN NO_RETVAL OFF}
Function test(a:boolean):Integer;
Begin
  If a then
    result := 1;
end;
{$WARN NO_RETVAL DEFAULT}
OMG
danke.
außer NORETVAL gibts sicher für jede warnung einen wert oder? Weißt du wo die liste zu finden ist?
Andreas
Nobody goes there anymore. It's too crowded!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Versionsinformationen werden nicht mit in die Exe übernommen

  Alt 20. Aug 2024, 14:04
Stehen alle in der Hilfe.

Und wie gesagt, ist DAS hier auch keine Lösung.
Die Lösung ist den Wert zu initialisieren, entweder vorher oder im Else, da die Funktion sonst mehr dem Russisch Roulette entspricht.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18: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