Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#26

Re: Höchster Wert aus Registry

  Alt 18. Jun 2007, 20:20
Hallo kaschte,

Zitat:
Kann es sein, dass bei der oben genannten Funktion nur zwei Zahlen verglichen werden??
Das ist richtig. Die Funktion CompareKeys wird von der internen Sortierroutine der Stringliste (eine QuickSort-Implementierung) immer dann aufgerufen, wenn zwei Werte verglichen werden müssen.

Zitat:
Der Erste Schlüssel ist eine alleinstehende "0".
Meine Einschränkung in Beitrag #22 bezog sich auf führende Nullen. So werden beispielsweise die Werte "00033" und "1234" nicht richtig angeordnet. Der erste Wert ist zwar numerisch betrachtet kleiner, er besitzt jedoch die größere Anzahl Zeichen. Die Rouutine CompareKeys vergleicht zunächst die Stringlängen und würde somit den Wert "00033" als größer einstufen.

Da du offenbar noch keine Lösung für dein Problem gefunden hast: kannst du eine Menge von Einträgen angeben, für die ein falsches Ergebnis ermittelt wird?

Gruß Hawkeye
  Mit Zitat antworten Zitat