![]() |
Explorer mit CreateProcessWithLogonW starten
Mit Folgender Routine starte ich einen Prozess unter einem anderen Benutzernamen:
Delphi-Quellcode:
Richtet euer Augenmerk mal auf den Parameter dwLogonFlags. Doirt steht im Moment: {LOGON_WITH_PROFILE} 0. So starte ich den Explorer mit LOGON_WITH_PROFILE, wird er auch gestaret. Nur leider zeigt er dann folgendes Verhalten:
function CreateProcessAsLogon(const User, PW, Application, CmdLine:
WideString): LongWord; var si: TStartupInfoW; pif: TProcessInformation; s: WideString; begin ZeroMemory(@si, sizeof(si)); si.cb := sizeof(si); si.dwFlags := STARTF_USESHOWWINDOW; si.wShowWindow := 1; SetLastError(0); if CmdLine = '' then s := Application else s := Application + ' "' + CmdLine + '"'; CreateProcessWithLogonW(PWideChar(User), nil, PWideChar(PW), {LOGON_WITH_PROFILE} 0, nil, PWideChar(s), CREATE_DEFAULT_ERROR_MODE, nil, nil, @si, @pif); Result := GetLastError; end; ![]() So jetzt habe ich herausgefunden, dass wenn ich ihn über die Eingabeaufvorderung so: runas /noprofile /user:Administrator explorer starte, obiges Verhaltenn icht zeigt und sofort aktualisiert, wie er soll. Ergo habe ich den Paramter entsprechen von LOGON_WITH_PROFILE nach 0 geändert. Nur jetzt startet er gar nicht mehr. Was Regedit aber tut. Und jetzt die Preisfrage? Wie kann ich den Explorer mit CreateProcessWithLogonW starten ohne dass er das Profil läd, damit er eben auch ohne drücken von F5 aktualisiert? [edit=Christian Seehase]URL-Tag korrgiert Mfg, Christian Seehase[/edit] |
AW: Explorer mit CreateProcessWithLogonW starten
Moin,
Der Thread ist etwas älter aber gerade sehr interessant für mich. Hast du es hinbekommen den Explorer ordentlich zu starten? Ich bekomme ihn gar nicht erst gestartet. Wäre dir sehr dankbar für deine Lösung falls du eine hast. Vielen Dank im Voraus b Sven |
AW: Explorer mit CreateProcessWithLogonW starten
Die Explorer.exe ist doch nicht nur für den "File Explorer" da, sondern sie enthält auch die Taskleiste, wenn es die erste Instanz dieser Anwendung ist.
Es gibt also irgendwie ein Single-Instance-Verhalten und das könnte doch dafür verantwortlich sein, daß es nicht "mehrmals" gestartet wird? Und das mit dem "aktualisiert" kenn ich auch so, von "normal" gestarteten Explorern, auf einigen Rechnern, was echt nervig sein kann. |
AW: Explorer mit CreateProcessWithLogonW starten
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:20 Uhr. |
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