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-Key: 27591

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

Printed on: May 22, 2024 at 00:05 o'clock

Member: cykes
cykes Mar 07, 2006 at 12:35:53 (UTC)
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
Member: ITwissen
ITwissen Mar 07, 2006 at 15:09:28 (UTC)
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.
Member: cykes
cykes Mar 07, 2006 at 17:28:01 (UTC)
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")
Member: ITwissen
ITwissen Apr 05, 2006 at 18:53:17 (UTC)
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.