Format datuma Windows 10

Vse drugo, kar ne spada v nobeno zgornjo kategorijo.
Odgovori
zippo
Prispevkov: 264
Pridružen: 14.07.2002 12:11:29

Format datuma Windows 10

Odgovor Napisal/-a zippo » 17.10.2018 11:19:44

Pozdrav, klapa!

Zanima me, kako vi programreji rešujete problem, ki ga imam z Delphi 10.2 in windows 10. Imam namreč precej problemov za presledkom v formatu datuma, ki ga uporablja Windows 10. Primer je "01. 01. 2018".

Problem se pojavi pri npr. TDateEdit, ki javi napako, da ni veljaven format datuma.

Imate tudi vi tak problem? Če ja, kako ga rešujete?

Miha-R
Prispevkov: 2155
Pridružen: 14.05.2001 21:29:53

Re: Format datuma Windows 10

Odgovor Napisal/-a Miha-R » 17.10.2018 11:58:59

Takole smo to rešili v naših programih:

1. Uporabimo initialization sekcijo in preverimo, če FormatSettings.ShortDateFormat vsebuje kakršenkoli presledek poleg običajne in pričakovane pike.
2. S funkcijo TryStrToDate preverimo, ali smo sposobni datum spremeniti v tekst in nazaj.
3. Če pride do težav, uporabimo knjižnico Delphi Detours Library in funkcijo InterceptCreate, da:
3.1. preusmerimo APIje GetLocaleChar, GetLocaleFormatSettings in GetFormatSettings v naše lokalne funkcije.
3.2. v preusmerjenih funkcijah najprej kličemo original, nato še prenastavimo FormatSettings.DateSeparator nazaj na '.' (brez presledka)
4. V finalization morebitno preusmeritev odstranimo.

Vse skupaj imamo zapakirano v unit, ki ga vključimo v .dpr čimvišje na spisku vseh unitov.
Vedno sem želel napisati prav tak odgovor.

zippo
Prispevkov: 264
Pridružen: 14.07.2002 12:11:29

Re: Format datuma Windows 10

Odgovor Napisal/-a zippo » 17.10.2018 13:34:19

OK, hvala.

Morda se motim, ma kaj je tukaj Windows 10 napaka v datumu (kateri mi je res malo čuden s temi presledki...) ali Delphi nima podpore za Slovenske Win10?

V bistvu mi je malo zoprno, da v C# deluje BP, v Delphiju pa ne.

lp,
m@rko

Miha-R
Prispevkov: 2155
Pridružen: 14.05.2001 21:29:53

Re: Format datuma Windows 10

Odgovor Napisal/-a Miha-R » 17.10.2018 15:13:55

Win10 je spremenil zapis datuma za slovenski in hrvaški jezik. Win APIji so začeli kot DateSeparator vračati kombinacijo dveh znakov, pike in presledka. Delphi tu predvideva, da je za mejnik dovolj samo en znak in ko pretvarja tekst v datumski tip, uporabi napačen pristop in dobi napačen rezultat.

Pred dvema letoma, ko sem iskal rešitev, sem ugotovil, da je RTL koda v tem delu precej nesrečno spisana in je vprašanje, če bo sploh kdaj popravljeno. Sem pa zdajle našel ticket v njihovem sistemu in ja, po skoraj treh letih je še vedno odprt.
Vedno sem želel napisati prav tak odgovor.

misterti
Prispevkov: 1
Pridružen: 18.02.2019 09:23:55

Re: Format datuma Windows 10

Odgovor Napisal/-a misterti » 18.02.2019 09:26:56

Zaradi več-znakovnega ločila sem Imel težavo s StrToDateTime,
VarToDateTime iz knjižnice Variants dela pravilno

zippo
Prispevkov: 264
Pridružen: 14.07.2002 12:11:29

Re: Format datuma Windows 10

Odgovor Napisal/-a zippo » 18.02.2019 09:45:54

Hvala za namig!

Roman
Prispevkov: 123
Pridružen: 15.10.2001 15:28:09

Re: Format datuma Windows 10

Odgovor Napisal/-a Roman » 11.04.2019 12:56:24

Najbrž je Microsoft upošteval standardno slovensko obliko datuma.
https://www.leemeta.si/blog/slovenski-p ... lovenscini
Mene presledki tudi motijo.

janezb
Prispevkov: 1
Pridružen: 30.11.2016 17:18:16

Re: Format datuma Windows 10

Odgovor Napisal/-a janezb » 11.11.2019 09:45:17

Še danes Win10 uporablja te presledke :roll:

untersuchungsliege untersuchungsliegen družabne igre otroški bazeni igrače za otroke elektronska varuška lego kocke previjalna komoda
otroški avtosedeži otroška posteljica igralne podloge otroški sedež za kolo dječja kolica igračke dječja soba romobili dječji bicikli kolica za bebe Google oglaševanje Google ads agencija za marketing marketing agencija marketinška agencija oblačila icepeak pralne maske trgovina z oblačili pohištvo žar na oglje lavazza kapsule kavne kapsule profesionalni pomivalni stroj ledomat gume za motor zaporni čepi samokolnica gumijast čoln tesnila profili izdelava spletnih strani optimizacija spletnih strani SEO aplikacije vsebinski marketing izdelava spletnih trgovin analiza spletnih strani oglaševanje na spletu spletna analitika marketinška avtomatizacija marketinško svetovanje izdelava digitalne strategije otroški vozički slike stanovanjski kredit za mlade hitri gotovinski kredit hitri kredit za nekomitente najugodnejši krediti kredit takoj na položnice gotovinski kredit gotovinski krediti zamenjava banke informativni izračun kredita obročna Visa electron kredit za sp gotovinsko posojilo gotovinsko posojilo takoj izobraževanje cisco sdn IoT varnost omrežja brezžična omrežja postavitev omrežja erp informacijska varnost omrežje SOC vzdrževanje postelje otroški vozički avtosedež jedilne garniture vzglavniki ležišča jogi triglav skladi skladi zlato tečajnica delnice vzajemni skladi triglav skladi tečajnica varčevanje vzajemni skladi tečajnica skladi tečajnica tečajnica skladov kako varčevati vlaganje investicijski skladi tečajnica vzajemnih skladov varčevanje denarja naložbe finančni svetovalec varčevanje za pokojnino vzajemni sklad varčevanje v skladih varčevalni načrt upravljanje premoženja triglav vzajemni skladi tečajnica vzajemni skladi vlaganje v sklade posteljnina vrtne garniture vzmetnice ležišča in posteljni podi zapestnice verižice nakit šumenje v ušesih podančice pms baldrijan holesterol ameriški slamnik ameriški slamnik kandida depresija pegasti badelj poceni gume žarnice poslovna darila kapa s šiltom majice prstani poceni poročni prstani uhani davčne blagajne predstave kopalnice žar plise zavese

Odgovori