Špatný čas souborů - hodinový rozdíl

Hlášení chyb a problémů programu Altap Salamander. Buďte, prosím, ve svých popisech co nejpodrobnější a vytvořte pro každý incident nový příspěvek. Nevkládejte programem generovaná hlášení o pádu programu, pošlete je e-mailem.
ondass
Posts: 2
Joined: 03 Apr 2017, 06:37

Špatný čas souborů - hodinový rozdíl

Post by ondass »

Bug report:

Už jsem vícekrát viděl, že Salamander zobrazoval čas souborů nějak podivně, například byl různý na flešce vs. na disku, ale nikdy jsem to neřešil pořádně.

Tak teď to tu mám přesněji. Můj Windows 8.1 systém má aktuálně časovou zónu +2 hodiny (CET Praha) a pracuji interaktivně, nikoliv přes RDP, kam by se přenášela zóna z klienta. Takže časová zóna je +2 hodiny jak pro počítač tak pro uživatele.

Když si vylistuju soubory přes .NET (například PowerShell), tak to zobrazuje lokální čas přesně o hodinu méně, než Salamander. Viz. obrázek.
Jedná se o NTFS. Ve Windows Explorer je čas vidět v pořádku. I když spustím CMD přímo ze Salamandra, tak jeho DIR příkaz zobrazuje čas stejně jako .NET/PS/Explorer. Zatímco Salamander pořád o hodinu jinak.

Je zajímavé, že když založím ručně nový soubor, časy jsou vidět všude v pořádku. Zdá se mi, že to špatné zobrazení času je u souborů, které jsem přikopíroval z jiného disku - typicky fotky.

o.
Attachments
salamander-spatny-cas.png
salamander-spatny-cas.png (131.52 KiB) Viewed 6751 times
ondass
Posts: 2
Joined: 03 Apr 2017, 06:37

Re: Špatný čas souborů - hodinový rozdíl

Post by ondass »

... a dívám se do NTFS FILE RECORD pomocí WinHex a i tam je jedinné časové razítko týkající se modifikace s hodnotou UTC tak jak má být.

Takže by mě v podstatě zajímalo, kde ty špatné časy Salamander vlastně vůbec bere. Například na tom souboru z 24.12.2016 ze 17:40 CET (explorer, cmd, powershell) je na NTFS razítku UTC 16:40 (winhex) což odpovídá v té době dobře, kdy bylo +1 hodina oproti UTC. A v Salamandrovi je dneska 18:40, což je nepochopitelné jak tehdy, tak i dnes, kdy už jsme navíc o 2 hodiny oproti UTC.

o.
Petr Solin
ALTAP Staff
ALTAP Staff
Posts: 1112
Joined: 08 Dec 2005, 09:13
Location: Novy Bor, Czech Republic
Contact:

Re: Špatný čas souborů - hodinový rozdíl

Post by Petr Solin »

Časy souborů jsou na disku uloženy v UTC. Před zobrazením je potřeba je převést na lokální čas. Zmiňované časy posunuté o hodinu jsou z období zimního času, Salamander je převádí do aktuálního lokálního času, tedy letního. Explorer se chová uživatelsky lépe, převádí čas souboru do lokálního času platného v čase souboru (tedy zimního času pro soubory z prosince a letního pro soubory z dubna). Před Windows 7 se Explorer choval stejně jako Salamander. Opravu mám na seznamu prací, děkuji za připomenutí.
Post Reply