itwissen
Goto Top

Datumsberechnug aus Windows AD Werten

Unleserliche Datumsangaben im AD-LDAP umwandeln

Ich haenge wieder mal an einer spannenden Frage in Zusammenhang mit dem Windows LDAP.

Wie ueblich werden viele Userparameter im Windows LDAP gespeichert. Manche mit aussagekraeftigen Werten, manche mit weniger aussagekraeftigen. Um letztere mache ich mir gerade Gedanken. Diese wuerde ich gerne in leserliche Umwandeln. Ganz speziell die Datumsangaben.

z.B.
ein Wert fuer "accountExpires" lautet "127888344000000000", welches irgendwas mit dem 6.4.2006 zu tun hat.
Hier noch ein paar andere Werte:

127861951213525000
127844711531957500
127181275999140625

Kennt jemand einen Algorithmus, um diese Zahlen in ein Datum umzuwandeln?

Content-ID: 27591

Url: https://administrator.de/contentid/27591

Ausgedruckt am: 21.11.2024 um 22:11 Uhr

cykes
cykes 07.03.2006 um 13:35:53 Uhr
Goto Top
Hi,

Microsoft verwendet intern zur Darstellung/Speicherung eines Datum eine Ganze Zahl der Tage
seit dem 01.01.1900. Die diversen Berechnungsformeln für gegebene Datumszahlen oder
gegebene Daten findest Du u.a. hier: http://www.diaware.de/html/tage.html

Die meisten MS Produkte und auch Programmiersprachen haben bereits eine Funktion zur Umrechnung eingebaut.

Gruß

cykes
ITwissen
ITwissen 07.03.2006 um 16:09:28 Uhr
Goto Top
Da ich Admin bin und kein Programmierer, brauche ich sehr lange um diese Funktionen im Visual Studio zu finden.

Falls jemand ein paar Zeilen Programmcode oder zumindest ein Hinweis auf die entsprechende Funktion haette, waere das sehr hilfreich.
cykes
cykes 07.03.2006 um 18:28:01 Uhr
Goto Top
Hi,

hätte da was in Visual Basic aus diesem Forum: http://vbtechniques.com/forum.asp?a=rm&id=1200

MsgBox Format(37818.6757175926, "Short Date") _ & " " & Format(37818.6757175926, "Long Time")
ITwissen
ITwissen 05.04.2006 um 20:53:17 Uhr
Goto Top
Die Lösung zu meinem Problem habe ich inzwischen gefunden.

http://www.microsoft.com/technet/scriptcenter/topics/win2003/lastlogon. ...

Die Zahl ist ein 64Bit Integer und es sind die 100-nanosekunden (10'000'000stel Sekunde) seit 1.1.1601.