Thema: Delphi ADS - Fullname

Einzelnen Beitrag anzeigen

Udontknow

Registriert seit: 17. Jun 2002
223 Beiträge
 
#2

Re: ADS - Fullname

  Alt 26. Jan 2007, 09:31
Hallo!

Ist ein wenig ins Blaue hineingeraten, aber sehr wahrscheinlich handelt es sich bei IADSUser um ein Interface. Interfaces werden ja automatisch freigegeben, sobald sie out-of-scope gehen, das heisst, sobald der Compiler in diesem Falle die lokale Variable usr freigeben will, geschieht implizit ein Aufruf der Methode _Release.

Delphi-Quellcode:
ADsGetObject('WinNT://' + Domain + '/' + Username, IADsUser, usr);
try
  assert(usr <> nil);
  s := usr.FullName;
finally
  USR:=NIL; // <- Hier sollte der Fehler direkt auftauchen
end;
Und innerhalb dieser Release-Routine oder im Destruktor des dahinterliegenden Objektes kracht es dann wohl. Vielleicht gibt es eine explizite DeInit-Routine, die unbedingt vor Freigabe des Interfaces aufgerufen werden muss? Schau doch mal ins MSDN, vielleicht hilft dir das weiter.

Cu,
Udontknow
  Mit Zitat antworten Zitat