Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

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)

Luckie 14. Jul 2008 09:14

Re: Benutzerkennwort zurücksetzen
 
Was hat jetzt da seine mit dem anderen zu tun? Willst du Programme unter einem anderem Benutzerkonto ausführen mit dem Konsolenprogramm RunAs zum beispiel, muss zum einen der Dienst "Sekundäre Anmeldung" laufen und das betreffende Konto muss mit einem Passwort versehen sein.

kuba 14. Jul 2008 11:35

Re: Benutzerkennwort zurücksetzen
 
Hy,

mit diesem Code hatte ich es schon mal am laufen:

Delphi-Quellcode:
function CreateProcessAsLogon(const User, PW, Application, CmdLine: WideString):
  Boolean;
var
  si          : TStartupInfoW;
  pif         : TProcessInformation;
begin
  ZeroMemory(@si, sizeof(TStartupInfo));
  si.cb := SizeOf(TStartupInfoW);
  si.dwFlags := STARTF_USESHOWWINDOW;
  si.wShowWindow := 1;
  Result := CreateProcessWithLogonW(PWideChar(User), nil, PWideChar(PW),
    LOGON_WITH_PROFILE, nil, PWideChar(Application +' '+CmdLine),
    CREATE_DEFAULT_ERROR_MODE, nil, nil, si, pif);
end;
Jetzt habe ich den Code wieder in mein Projekt eingefügt und erhalte : [Fehler] projekt.dpr(1635): E2010 Inkompatible Typen: 'PStartupInfoW' und '_STARTUPINFOW'

KUBA

kuba 14. Jul 2008 11:44

Re: Benutzerkennwort zurücksetzen
 
jetzt funktionierts, irgendetwas war mit den Units nicht OK...

der Code funzt leider doch nicht richtig, aber ich hab jetzt endlich eine Möglichkeit gefunden ..

Delphi-Quellcode:
 if LogonUser(PAnsiChar(USERNAME),       // UserName
             PAnsiChar(''),         // Domäne oder lokaler Rechner
             PAnsiChar('Passwort'),       // Password
             LOGON32_LOGON_BATCH or LOGON32_LOGON_NETWORK or LOGON32_LOGON_INTERACTIVE,
             LOGON32_PROVIDER_DEFAULT,
             AdminToken)
     then begin
       if ImpersonateLoggedOnUser(AdminToken)
       then begin
              // hier kommt Dein Prog.-Code hin
              winexec('notepad.exe',SW_SHOW);
              RevertToSelf;             // zurückschalten zum angemeldeten Benutzer
            end;
     end;
:roll:

KUBA

kuba 14. Jul 2008 18:10

Re: Benutzerkennwort zurücksetzen
 
Zitat:

Zitat von kuba
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

Hallo,

danke nochmal für die Tip´s !! :angel:

Ich habs mit einem Zusammenspiel der o.g. Codes hinbekomen. Über den Service erteile ich bei Bedarf meinem User Admin-Rechte und starte dann mit RunAs aus meinem Hilfsprogramm den Informationsimport. Klappt prima und ist schön kompatibel, so habe ich meine Software wirklich stark verbessert !!!

Jetzt muss ich unbedingt mal durchforsten und aufräumen :mrgreen:

KUBA

PS: Wer Lust hat kann meine Software mal testen, aber auf eigene Gefahr :mrgreen:
Nee, funktioniert schon, nur wenn ein Bug drin ist kanns schonmal heikel werden ...
KIOSK-Professional Softwarepaket


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 Uhr.
Seite 4 von 4   « Erste     234   

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