Jeśli ktoś już coś takiego robił, to proszę o wskazówki.
Ja używam czegoś takiego:
uses adshlp, ActiveX .... ;
function LogToDomain( xDomain, xUser, xPass : String) : LongInt;
var
Obj:IADs;
begin
Screen.Cursor:=crHourglass;
Result:=-1;
try
CoInitialize(nil);
Result:= ADsOpenObject('WinNT://'+xDomain,xUser,xPass,ADS_SECURE_AUTHENTICATION,IADs,Obj);
finally
CoUninitialize;
Screen.Cursor:=crDefault;
End;
End;
procedure TFormLogowanie.BitBtn1Click(Sender: TObject);
var _ok : boolean;
_sql : string;
begin
if (Edit1.Text = '') or (Edit2.Text = '') then
begin
Showmessage('Wpisz nazwę użytkownika i hasło');
exit;
end;
logged := false;
id_oper := Edit1.Text;
log_domain_res := LogToDomain( 'EURO', Edit1.Text, Edit2.Text);
// sprawdzenie statusu logowania z wykorzystaniem funkcji z pakietu
_ok := Succeeded(log_domain_res);
if _ok = True then
begin
logged := true;
FormLogowanie.close;
FormMain.ustaw_uprawnienia(id_oper, FormMain.ADOQueryTemp, 1);
FormMain.Caption := 'Konsola wskaźników - ' + id_oper;
end
end;
Ale niestety mogę się zalogować tylko na swoim komputerze (jak jestem zalogowany do windows na własnym użytkowniku) - jak jestem na innym komputerze (komputer jest zalogowany na innego użytkownika) to wywala mi błąd: "Wielokrotne połączenie z serwerem lub udostępnionym zasobem przez tego samego uzytkownika przy użyciu wiecej niż jednej nazwy użytkownika są niedozwolone"