Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Benutzerkennwort zurücksetzen (https://www.delphipraxis.net/117114-benutzerkennwort-zuruecksetzen.html)

kuba 11. Jul 2008 19:40


Benutzerkennwort zurücksetzen
 
Hallo,

weiss jemand wie man ein Benutzerkennwort mit Delphi zurücksetzen kann ?

mir fällt nur ein : net user Benutzer *

aber dann müsste man 2 mal ENTER an das DOS-Fenster senden ...

KUBA

Larsi 11. Jul 2008 20:54

Re: Benutzerkennwort zurücksetzen
 
Es ist vielleicht nicht das Einfachsteste aber über control userpasswords2 gibts den Button "Kennwort zurücksetzen" vielleicht kannste den irgendwie "virtuell" drücken :) .

Dezipaitor 11. Jul 2008 21:11

Re: Benutzerkennwort zurücksetzen
 
Guck mal hier.

Luckie 11. Jul 2008 21:56

Re: Benutzerkennwort zurücksetzen
 
Und einen Delphi Wrapper für die von Dezipaitor genannte Funktion, gibt es bei mir in meiner Unit MpuNTUser.pas: http://www.michael-puff.de/Developer/Delphi/Units/

kuba 12. Jul 2008 08:44

Re: Benutzerkennwort zurücksetzen
 
Zitat:

Zitat von Dezipaitor

Hab mir genau diese Seite angesehen, da muss ich aber das alte Kennwort wissen, oder kann ich dort auch mit "*" arbeiten ?

KUBA

kuba 12. Jul 2008 08:45

Re: Benutzerkennwort zurücksetzen
 
Zitat:

Zitat von Luckie
Und einen Delphi Wrapper für die von Dezipaitor genannte Funktion, gibt es bei mir in meiner Unit MpuNTUser.pas: http://www.michael-puff.de/Developer/Delphi/Units/

Hab ich mir auch schon angesehen, blicke nicht ganz durch ...

KUBA

Basilikum 12. Jul 2008 09:35

Re: Benutzerkennwort zurücksetzen
 
Zitat:

Zitat von kuba
Hab mir genau diese Seite angesehen, da muss ich aber das alte Kennwort wissen, oder kann ich dort auch mit "*" arbeiten ?

bei Verwendung von MSDN-Library durchsuchenNetUserSetInfo mit Level 1003 kann das Kennwort auch ohne das alte gesetzt werden (natürlich vorausgesetzt, die erforderlichen Permissions sind vorhanden).

kuba 12. Jul 2008 15:59

Re: Benutzerkennwort zurücksetzen
 
Zitat:

Zitat von Basilikum
Zitat:

Zitat von kuba
Hab mir genau diese Seite angesehen, da muss ich aber das alte Kennwort wissen, oder kann ich dort auch mit "*" arbeiten ?

bei Verwendung von MSDN-Library durchsuchenNetUserSetInfo mit Level 1003 kann das Kennwort auch ohne das alte gesetzt werden (natürlich vorausgesetzt, die erforderlichen Permissions sind vorhanden).

Was Bedeutet Level 1003 ? Habe hier folgende Funktion :

Delphi-Quellcode:
//********************************************
//SET A USER INFO
function SetUserInfo(fusername,fserver,ffulname,fcomment:string;FFlags,fuserID:dword):LongInt;
var TheUser:Array[0..255] Of WideChar;
    TheServer:Array[0..255] Of WideChar;
    TheFullName:Array[0..255] Of WideChar;
    TheComment:Array[0..255] Of WideChar;
    MyInfo:USER_INFO_20;
begin
     StringToWideChar(FUserName,@TheUser,255);
     StringToWideChar(FServer,@TheServer,255);
     StringToWideChar(FFullName,@TheFullName,255);
     StringToWideChar(FComment,@TheComment,255);
     MyInfo.usri20_name:=@TheUser;
     MyInfo.usri20_full_name:=@TheFullName;
     MyInfo.usri20_comment:=@TheComment;
     MyInfo.usri20_flags:=FFlags;
     MyInfo.usri20_user_id:=FUserID;
     Result:=NetUserSetInfo(@TheServer,@TheUser,20,@MyInfo,nil);
end;
//******************************************************************
Wie verwende ich diese Funktion (mit Level 1003) um das Benutzerkennwort zu löschen bzw. zu setzen ?

Ich beschäftige mich zur Zeit mit einer Software die einen PC in den KIOSK - Modus versetzen soll. Dabei möchte ich aus einem Systemdienst heraus Informationen in die Registry meines "KIOSK-User" schreiben, ausserdem möchte ich dass der Systemdienst abcheckt ob der KIOSK-User eingeloggt ist. Falls dies der Fall ist soll der Systemdienst die KIOSK-Anwendung mit Benutzerrechten starten. Bisher verwende ich ein Hilfsprogramm dass bei der Benutzeranmeldung über Run-Key in der Registry gestartet wird, Registry Informationen kann ich jedoch nur importieren wenn mein KIOSK-Benutzer Administratorrechte hat. Daher kam mir die Idee, die Registryinformationen durch meinen Systemdienst in das Benutzerkonto zu schreiben, dann sind die Informationen schon vor dem einloggen im Profil und können sogar während der Laufzeit geändert werden. Wäre eine tolle Verbesserung für meine Software !!

KUBA

Basilikum 12. Jul 2008 16:31

Re: Benutzerkennwort zurücksetzen
 
hier ein Beispiel für die Verwendung von NetUserSetInfo mit Level 1003 (Kennwort setzen):
Delphi-Quellcode:
Function                         LM_NetUserSetServerPassword(Const Server,UserName,NewPassword : String) : Boolean;
Type
  TUserInfo_1003                  = Packed Record
    Password                     : PWideChar;
  end;
Const
  LM20_PWLEN                     = 20;
Var
  BufServer                      : Array[0..63] Of WideChar;
  BufUsername                    : Array[0..63] Of WideChar;
  BufPassword                    : Array[0..LM20_PWLEN - 1] Of WideChar;

  UI1003                          : TUserInfo_1003;
  Param_Err                      : DWORD;
  Res                            : NetAPIStatus;
Begin
  StringToWideChar(Server,BufServer,Length(BufServer));
  StringToWideChar(Username,BufUsername,Length(BufUsername));
  StringToWideChar(NewPassword,BufPassword,Length(BufPassword));

  UI1003.Password:=@BufPassword;
  Res:=NetUserSetInfo(BufServer,BufUsername,1003,@UI1003,Param_Err);
  Result:=(Res = NERR_Success);
end;
(Server kann ein leerer String sein, sofern es sich um einen lokalen User handelt, für Domain-Users muss der Name eines DCs angegeben werden)

kuba 12. Jul 2008 16:44

Re: Benutzerkennwort zurücksetzen
 
@Basilikum

thanx, probier ich aus ...
langsam verstehe ich, geil :zwinker:

Evtl. kann ich mein Problem lösen indem ich das Kennwort meines KIOSK-User immer komplett zurücksetzte (keins). Um Informationen in die Registry zu speichern könnte ich dem User ein Kennwort erteilen, ihn zur Gruppe "Administratoren" hinzufügen und dann mit "RunAs" die Informationen importieren. Anschliessend entferne ich den KIOSK-User wieder aus der Gruppe "Administratoren". So könnte ich meinem KIOSK-User nur "Benutzerrechte" erteilen und mit meinem "RunAs" die Informationen importieren (z.B. neue Startseite im Internet Explorer setzten). Cool, ich probier das mal aus, muss aber erstmal nach meinem Schatz schauen :cat:

KUBA


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:52 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz