Einzelnen Beitrag anzeigen

Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
941 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#14

Re: AD + LastLogon & pwdLastSet - Hilfe!!!!

  Alt 31. Mär 2008, 12:08
Hallo,

hat zwar ebend ein wenig bei mir gedauert (ca. 40 min), aber jetzt geht es.

Folgende Vorbemerkung zu pwdLastSet:

(Auszug aus der MSDN)
Zitat:
CN Pwd-Last-Set
Ldap-Display-Name pwdLastSet
Size 8 bytes
Update Privilege This value is set by the system.
Update Frequency Each time the password is changed.
Attribute-Id 1.2.840.113556.1.4.96
System-Id-Guid bf967a0a-0de6-11d0-a285-00aa003049e2
Syntax Interval
In diesem Fall ist die Syntax intressant und es stellt sich die Frage was ist 'Interval'?
Zitat:
Name Interval
Syntax ID 2.5.5.16
OM ID 65
MAPI Type -
ADS Type ADSTYPE_LARGE_INTEGER
Variant Type VT_DISPATCH
SDS Type A COM object that can be cast to an IADsLargeInteger.
Damit sind schon alle Fragen beantwortert und die Fehlermeldung ist klar.

Delphi-Quellcode:
...
rs.Fields['pwdLastSet'].Value
...
gibt ein Interface vom Type IADsLargeInteger zurück.

Was ist zu tun?

1. ActiveDs_TLB in die uses-klausel aufnehmen (wegen IADsLargeInteger).
2. die Variablen pls : Variant und li : IADsLargeInteger; anlegen und
3. das ganze zur Zusammenarbeit bringen
Delphi-Quellcode:
...
      pls := rs.Fields['pwdLastSet'].Value;
      li := IDispatch(pls) As IADsLargeInteger;
      ft.dwLowDateTime := Li.LowPart;
      ft.dwHighDateTime := li.HighPart;
...
Fertig. Nun klappt es auch mit dem Datum und der Uhrzeit.

Viele Grüße und bis bald.
  Mit Zitat antworten Zitat