AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)
Thema durchsuchen
Ansicht
Themen-Optionen

15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

Ein Thema von himitsu · begonnen am 17. Jun 2024 · letzter Beitrag vom 20. Jun 2024
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von himitsu
himitsu

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

15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 17. Jun 2024, 20:28
Vor allem im brutalen Windows 11 fällt es schneller auf, dass dort etwas fehlt und die Anwendung womöglich virtualisiert wird, wenn sie nicht sagt, dass sie kompatibel ist.

https://embt.atlassian.net/servicede...tal/1/RSS-1159
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 17. Jun 2024, 20:45
Das habe ich schon bei Windows 7 und Delphi XE oder so gesehen, aber ich habe es halt immer manuell so hinzugefügt, wie ich es wollte. Insofern störte mich das nicht wirklich.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 18. Jun 2024, 00:13
Ich würde das auch allenfalls als Feature-Request einordnen, aber keinesfalls als Bug.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
655 Beiträge
 
Delphi 12 Athens
 
#4

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 18. Jun 2024, 09:15
Helft mir mal zum Verständnis: ich arbeite immer mal wieder mit Konsolen-Apps und habe bisher noch keine Probleme festgestellt. Wo würde ich das fehlende Manifest bei einer Konsolen-App denn konkret bemerken?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 18. Jun 2024, 10:23
Seit Windows XP gibt es ein Manifest, innerhalb der EXE.
Anfangs nur zum Aktivieren des XP-Style, drum gern XP-Manifest genannt.
Seit Windows mindestens 7 können auch noch immer mehr andere Dinge darin stehen.
> HighDPI, MonitorScaling, SupportedOS (mit welchem Windows ist mein Programm kompatibel), Admin oder nicht, DLL-Abhängigkeiten, LongPaths (größer MAX_PATH), .....
https://learn.microsoft.com/de-de/wi...tion-manifests

Ohne Manifest würde/könnte Windows davon ausgehen, dass dein Programm uralt ist, noch vor XP (2K, 98, ...)
und dann kann es passieren, dass es virtualisiert wird ... wie und was, entscheidet Windows frei nach gutdünken und wie es heute mal Lust hat.

Du kennst doch bei Links diesen Kompatibilitäts-Tab, wo man sagen kann Win7, XP, 95, Vista und noch weitere Dinge.
Das betrifft aber auch einige WinAPI, wo das Programm womöglich eine ältere Version von SystemDLLs bekommt (besonders die VCL betreffend, z.B. TreeView und TaskDialoge)
aber auch, wo im Dateisystem und inzwischen auch der Registry so Einiges in den VirtualStore umgeleitet werden kann kann.
und wer weiß was sonst noch
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (18. Jun 2024 um 10:26 Uhr)
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
655 Beiträge
 
Delphi 12 Athens
 
#6

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 18. Jun 2024, 11:06
JO, grundsätzlich kenne ich das Manifest, hatte das bisher aber immer nur mit Dingen rund um die GUI in Verbindung gebracht. Aber stimmt - VirtualStore und ähnliche Dinge im Dateisystem könnten ein wichtiger Punkt sein.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 18. Jun 2024, 11:22
Wenn ich das richtig sehe, geht es hier ja lediglich um die Default-Einstellung. Schließlich kann man ja problemlos ein Manifest einbinden, wenn das denn benötigt oder gewünscht ist.

Ich persönlich bin da mit Sebastian im selben Boot: In der Regel brauche ich es nicht und wenn, dann aktiviere ich es eben.
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.063 Beiträge
 
Delphi 12 Athens
 
#8

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 18. Jun 2024, 11:55
Jupp, es geht um die Codevorlage/Template, welche Delphi bei Neuerstellung verwendet.

Wir wissen ja, dass viele das natürlich vergessen / meistens nicht dran denken. (mich nicht ausgeschlossen)

Konsolenanwendungen werden wohl viel weniger erstellt, als VCL oder FMX, wobei es dort ja schon ewig standardmäßig aktiv ist.
Drum war ich auch noch nie auf die Idee gekommen, das zu prüfen, bis es jetzt mal knallte.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
555 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 19. Jun 2024, 07:57
Danke für die Links. Auch ich denke nicht dran.

Manifeste unter Windows helfen beim Management von Abhängigkeiten und erlauben deren exakte Definition. Klassiker wären beim Betrieb von serverseitiger Software die präzise Definition von Abhängigkeiten von Dynamic Link Libraries.

Damit sind Konsolenanwendungen mit von der Partie. Es hilft sogar, das Manifest aus dem Executable auszulagern um Anpassungen nach intensivem Testen an neue DLL Versionen am Server zu 'implementieren' (jetzt nicht im Sinne von programmieren, sondern administrieren), um die geht es in dem Umfeld am Ende.

Unter UNIX/Linux kann/muss oder musste, keine Ahnung ob es schon bessere Lösungen dafür gibt, die Abhängigkeiten mittels Kommandozeilen Utility gegebenenfalls bügeln. Vor den Manifesten unter Windows war UNIX/Linux diesbezüglich eher im Vorteil. Lange blieb dieser Aspekt bezüglich Windows Server unter der Decke oder wurde ohne viel Getöse am Netz von Administratoren erfreut zur Kenntnis genommen.

Jupp, es geht um die Codevorlage/Template, welche Delphi bei Neuerstellung verwendet.

Wir wissen ja, dass viele das natürlich vergessen / meistens nicht dran denken. (mich nicht ausgeschlossen)

Konsolenanwendungen werden wohl viel weniger erstellt, als VCL oder FMX, wobei es dort ja schon ewig standardmäßig aktiv ist.
Drum war ich auch noch nie auf die Idee gekommen, das zu prüfen, bis es jetzt mal knallte.
  Mit Zitat antworten Zitat
Benutzerbild von gubbe
gubbe

Registriert seit: 8. Okt 2005
Ort: Schleswig-Holstein
127 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: 15 Jahre und niemandem fiel es auf? (Console ohne Manifest)

  Alt 19. Jun 2024, 17:33
Konsolenanwendungen werden wohl viel weniger erstellt, als VCL oder FMX, wobei es dort ja schon ewig standardmäßig aktiv ist.
Drum war ich auch noch nie auf die Idee gekommen, das zu prüfen, bis es jetzt mal knallte.
Wo hat es denn geknallt?

Ich bin auch gerade in einer Anwendung darüber gestolpert, dass die Windows-Funktionen GetVersion und GetVersionEx eine veraltete Windows-Version zurückgeben (Windows 8), wenn man kein passendes Manifest eingebunden hat. Das kann sich dann natürlich auch auf eingebundene Bibliotheken auswirken, die dann keine neuen Features von moderneren Betriebsystemen nutzen. Das geht dann aber letztlich vom Programm aus und GetVersion und GetVersionEx sind als "deprecated" dokumentiert. Dass Windows von sich noch weitere Kompatibilitätsfunktionen freischaltet habe ich jetzt nicht gesehen, aber es würde mich sehr interessieren, ob es außer der falschen Versionsmeldung noch weitere Auswirkungen hat.

VirtualStore gibt es doch schon länger und wird aktiv, wenn man versucht in Verzeichnisse wie Windows oder das eigene Programmverzeichnis zu schreiben. Solange die Applikation nicht solchen Unfug macht, sollte sich das fehlende Manifest hier nicht auswirken.
  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 14:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz