Einzelnen Beitrag anzeigen

Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.737 Beiträge
 
Delphi 6 Enterprise
 
#7

AW: Windows Login in eigener Applikation aufrufen

  Alt 12. Jul 2012, 17:23
Hier mal sowas, dass mir erst vor kurzem hier gezeigt wurde, Domäne ist immer fix, d.h. muss/kann bei mir nicht angegeben werden:

Delphi-Quellcode:
//User ist eine globale Variable in der Klasse, in der ich den Usernamen speichere.

procedure TMain.acErweitertExecute(Sender: TObject);
var u,p:String;
begin
  u:=User;
  p:='';
  if RemoteLoginDialog(u,p) then
    begin
    if CheckUserAccount(u,p,'UnsreDomäne') then
      begin
      User:=u
    else
      showmessage('Falscher Benutzername oder falsches Passwort!');
    end;
end;

function TMain.CheckUserAccount(Username, Password, Domain : string) : boolean;
var token: THandle;
begin
  if LogonUser(PChar(Username), PChar(Domain), PChar(Password),
    LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, Token) then
  begin
    CloseHandle(Token);
    Result := Token <> 0;
  end else
    Result := False;
end;
Ralph
  Mit Zitat antworten Zitat