Jak pobrać format daty krótkiej

0

Jak pobrać format daty krótkiej. Nie chodzi o pobranie aktualnej daty systemu.

Jest to podane w:
Panel Sterowania\Opcje regionalne i językowe\ "Standardy i formaty">>Dostosuj
W nowym okienku: "Dostosuj opcje regionalne" >>Data"Format daty krótkiej"

Przykładowo w XP jest yyyy-MM-dd
W 98 jest: yy-MM-dd

I wszystko by było dobrze, gdyby nie to że użytkownik może zmienić format daty np: podczas instalacji systemu i póżniej jak chce obliczyć przypuśćmy "wiek własnej bazy wirusów" (tak jak w innych AV - baza ma 30 dni) to jeśli format daty jest np: dd-MM-yy to obliczając z daty 2005-05-01 wystepuje błąd:

2005-05-01 is not a valid date [!!!] :-/

0

Może spróbuj wykonać to z yyyy, jeżeli się wywali, to w except daj, że mam usunąć z niej 2 pierwsze znaki i znowu porównaj, wtedy będziesz miał yy

0
Bla napisał(a)

Może spróbuj wykonać to z yyyy, jeżeli się wywali, to w except daj, że mam usunąć z niej 2 pierwsze znaki i znowu porównaj, wtedy będziesz miał yy

Zrobiłem tak dla obliczania daty na systemie 98, Me.
Tam jeśli zostanie rozpoznany system 9x to rok jest obcinany o 2 znaki i dopiero obliczany.

Ale to nadal nie jest uniwersalny sposób. Bo jeśli yy-mm-dd zostanie zamienione na dd-mm-yy to co mi to da ? Złe obliczenie wieku bazy.

0

Jeśli chodzi ci o sprawdzenie ustawionego w systemie formatu daty krótkiej, to służy do tego zmienna ShortDateFormat typu string.

A do bawienia się datami polecam funkcje EncodeDateTime i FormatDateTime, opis znajdziesz w helpie Delphi. :D

0
Stark napisał(a)

służy do tego zmienna ShortDateFormat typu string

Format_KrotkaData.Caption := ShortDateFormat;

Dzięki Stark :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1