Entwickler-Ecke

Windows API - Automatischer Windows-Login nach Neustart


tortom1000 - Mo 01.03.10 21:30
Titel: Automatischer Windows-Login nach Neustart
Hallo,
ich möchte per Programm einen Neustart initiieren mit anschließendem automatischen Windows-Login. Soweit kein Problem, einfach in die Registry die Auto-Login-Schlüssel geschrieben, Reboot auslösen und fertig.

Nun kann man das gesetzte Kennwort jedoch im Klartext in der Registry lesen, was ich nicht möchte.
Desweiteren gibt es ja Programme, die eine Reboot mit Autologin auslösen, ohne das der User das Loginkennwort wissen muss.

Siehe z.B. hier: http://www.heise.de/software/download/autologon_tool/45756

Weiß hier jemand, wie man sowas anstellt?

Gruß
Tortom

Moderiert von user profile iconNarses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.
Moderiert von user profile iconNarses: Topic aus Sonstiges (Delphi) verschoben am Mo 01.03.2010 um 21:13


Niko S. - Mo 01.03.10 22:03

Aber die Beschreibung sagt doch, dass das PW in verschlüsselter Form in der Registry abgelegt wird ôo...


Marc. - Mo 01.03.10 22:05

Siehe Protecting the Automatic Logon Password [http://msdn.microsoft.com/en-us/library/aa378826(VS.85).aspx]. ;)
AutoLogon [http://technet.microsoft.com/de-de/sysinternals/bb963905.aspx] nutzt AFAIK diese Funktion, um das Passwort verschlüsselt abzulegen.

Grüße,
Marc


tortom1000 - Mo 01.03.10 22:25

@Niko S.:
Das verlinkte Tool schreibt verschlüsselt in die Registry.

Wenn man aber die Lösung per Registry-Eintrag macht:

Quelltext
1:
2:
3:
4:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
DefaultUserName="Anzumeldender Benutzer"
AutoAdminLogon=1 
DefaultPassword="Passwort"

... dann steht das Kennwort im Klartext in der Registry. Da ich das jedoch nicht möchte und daher umgehen will, habe ich nach Lösungsansätzen gesucht und bin dabei auf das Tool gestossen.


@ Marc.:
Vielen Dank für den Hinweis. Ich werde mal danach suchen, ob's in Delphi schon was Ähnliches "Fertiges" gibt, was man einbinden kann.


Wie diese oder vergleichbare Tools es anstellen, das Passwort zum späteren Anmelden verschlüsselt in die Registry zu schreiben, ist mir aber nach wie unklar.

Gruß
Tortom

Moderiert von user profile iconNarses: Code-Tags hinzugefügt
Moderiert von user profile iconNarses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.


Astat - Mo 01.03.10 23:23

Hallo tortom1000, hab beim Logontool mal reingehackt, und folgendes gefunden.

Das Teil fummelt hier drinnen rum, aufräumen musst Du selber.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AutoRestartShell"=dword:00000001
"DefaultDomainName"="VPCWIN2000"
"DefaultUserName"="Administrator"
"LegalNoticeCaption"=""
"LegalNoticeText"=""
"PowerdownAfterShutdown"="0"
"ReportBootOk"="1"
"Shell"="Explorer.exe"
"ShutdownWithoutLogon"="1"
"System"=""
"Userinit"="C:\\WINNT\\system32\\userinit.exe,"
"VmApplet"="rundll32 shell32,Control_RunDLL \"sysdm.cpl\""
"SfcQuota"=dword:ffffffff
"allocatecdroms"="0"
"allocatedasd"="0"
"allocatefloppies"="0"
"cachedlogonscount"="10"
"passwordexpirywarning"=dword:0000000e
"scremoveoption"="0"
"DebugServerCommand"="no"
"SFCDisable"=dword:00000000
"AutoAdminLogon"="1"
"ShowLogonOptions"=dword:00000000
"AltDefaultUserName"="Administrator"
"AltDefaultDomainName"="VPCWIN2000"
"DisableCAD"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList]
"Administrator"=dword:00000000


lg. Astat