AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Frage zu LookupAccountName

Ein Thema von Mr_G · begonnen am 30. Dez 2006 · letzter Beitrag vom 31. Dez 2006
Antwort Antwort
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#1

Frage zu LookupAccountName

  Alt 30. Dez 2006, 23:36
Hallo zusammen!
Ich möchte gerne an die SID des Users kommen, der mein Programm ausführt. Dazu nutze ich LookupAccountName und dabei ist mir etwas seltsames aufgefallen: Nach dem Aufruf der Funktion liefert diese zwar True zurück und enthält die richtigen Werte aber GetLastError gibt nach besagtem Aufruf den Wert 997 ("Overlapped I/O operation is in progress.") zurück. Ich dachte mir spontan, dass es an meinem Code liegt aber dies schein nicht der Fall zu sein, da auch der Code den Luckie in einem Beitrag veröffentlicht hat dieses Verhalten an den Tag legte, jedoch wurde der Wert dort ignoriert da LookupAccountName bereits True zurückgegeben hatte.
Da ich mich mit der Windows API noch nicht so sehr auseinadergestzt habe, lautet meine Frage nun: Wieso liefert GetLastError an dieser Stelle einen Fehler zurück und (viel wichtiger!) warum kann ich das an dieser Stelle ignorieren (Die beschreibung hört sich ja gefährlich an )?

Danke im Voraus
Mr_G
Jan
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#2

Re: Frage zu LookupAccountName

  Alt 30. Dez 2006, 23:43
In der Native API hieße das nicht "Fehler", sondern "Status". Ist etwas glücklicher gelöst.

Das bedeutet nur, daß asynchron irgendwas entsprechend deiner Anforderung gerade bearbeitet wird. Muß dich aber nicht weiter stören. (Übrigens könnte das durchaus auch schon der Code davor erzeugen. Falls du das testen willst, benutzt du SetLastError zum Zurücksetzen vor einer Funktion ... nur dann bist du sicher, daß es diese Funktion war, die den Wert gesetzt hat!)

Denk mal drüber nach wie sinnlos der Name "ERROR_SUCCESS" ist
  Mit Zitat antworten Zitat
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Frage zu LookupAccountName

  Alt 30. Dez 2006, 23:49
Danke für die schnelle Antwort! Das ist ja echt verrückt!
Merken muss ich mir also für die Zukunft: GetLastError ist für mich nur interessant wenn die Funktion die ich davor aufgerufen habe False (oder etwas vergleichbares) zurückgibt?
Jan
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#4

Re: Frage zu LookupAccountName

  Alt 31. Dez 2006, 00:14
Zitat von Mr_G:
Danke für die schnelle Antwort! Das ist ja echt verrückt!
Merken muss ich mir also für die Zukunft: GetLastError ist für mich nur interessant wenn die Funktion die ich davor aufgerufen habe False (oder etwas vergleichbares) zurückgibt?
Drück es so aus: wenn sie fehlschlägt. Theoretisch kann es auch was anderes als FALSE sein ... aber prinzipiell hast du natürlich recht ... meistens wird es FALSE sein.
  Mit Zitat antworten Zitat
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Frage zu LookupAccountName

  Alt 31. Dez 2006, 11:41
Wunderbar! Nun hätten wir alle Unklarheiten beseitigt.
Besten Dank nochmal für die schnelle Hilfe!

Jan
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz