Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Versionsnummern vergleichen? (https://www.delphipraxis.net/104114-versionsnummern-vergleichen.html)

TheMiller 27. Nov 2007 16:31


Versionsnummern vergleichen?
 
Hallo,

ich ermittle Versionsnummern mit GetFileVersion und bekomme zB: 1.0.0.0 zurück. Kann ich diesen String mit anderen Versionsnummern im gleichen Format mit den normalen Vergleichsoperatoren < > vergleichen, oder muss ich erst die Punkte extrahieren um Probleme vorzubeugen?

Danke im Voraus

Progman 27. Nov 2007 16:35

Re: Versionsnummern vergleichen?
 
Wenn sie immer gleich sind, kannst du sie als Strings vergleichen.
Ich meine natürlich, wenn das Format immer das Gleiche ist ;)

TheMiller 27. Nov 2007 16:37

Re: Versionsnummern vergleichen?
 
Gut danke.

Das Format ist immer gleich.

Bye

Luckie 27. Nov 2007 16:42

Re: Versionsnummern vergleichen?
 
Schreib dir eine Funktion, die dir die Bestandteile in einem Record oder so zurückgibt. Das wäre für mich die saubere Lösung.

Laufi 27. Nov 2007 16:46

Re: Versionsnummern vergleichen?
 
hallo

Versionsnummern sind doch ganz normale Integer!

liebe Grüsse laufi

Progman 27. Nov 2007 16:50

Re: Versionsnummern vergleichen?
 
Die Function GetFileVersion (jedenfalls die ich kenne) arbeitet ja intern mit Integer. Bastelt dann eben nur einen String zusammen. Dürfte ja gar nicht so schwer sein, die umzuschreiben, so dass sie einen Record mit 4 Integer ausgibt.

TheMiller 27. Nov 2007 16:52

Re: Versionsnummern vergleichen?
 
Ja oder so. Ich benutze diese Funktion und habe mir die Version in ein Format mit Punkten umwandeln lassen. Dann lass ich das sein und nutze einfach nur die Integer, da ich sowieso gleich mit der Version 1.0.0.0 starte und nicht mit 0.1.0.0 oder so. Von daher dürfte das mit den Integern keine Probleme geben. Ein Record ist doch nicht unbedingt notwendig, oder?

Progman 27. Nov 2007 16:56

Re: Versionsnummern vergleichen?
 
wäre aber sicherer, es kann ja mal 1.2.4.33 mit 1.22.5.7 verglichen werden, da lohnt sich schon der Aufwand, die vier Felder eines Records zu vergleichen.

lbccaleb 27. Nov 2007 17:06

Re: Versionsnummern vergleichen?
 
enferne doch einfach aus der versionsnr. die punkte (.) und dann hast du eine normal integer zahle, die ja dann auch systematisch grösser sein sollte immer ;-)

das ganze kannst dann noch per strtoint zu einen integer machen und dann einfach mit der neuesten überprüfen, die zb auf nem serverliegt oder wo auch immer er sie her hat!!

mfg

ibp 27. Nov 2007 17:12

Re: Versionsnummern vergleichen?
 
Zitat:

Zitat von lbccaleb
enferne doch einfach aus der versionsnr. die punkte (.) und dann hast du eine normal integer zahle, die ja dann auch systematisch grösser sein sollte immer ;-)...

das glaube ich nicht!

Gegenbeweis..

1.23.45.67 < 2.0.0.0

1234567>2000


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:20 Uhr.
Seite 1 von 2  1 2      

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