Thema: Delphi CreateProcessAsUser

Einzelnen Beitrag anzeigen

toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#1

CreateProcessAsUser

  Alt 16. Nov 2004, 07:21
hallo jungs

hab gesehen dass einige Beiträge schon über den API Aufruf CREATEPROCESSASUSER zu finden sind. Leider find ich kein lauffähiges Beispiel.

Meins sieht im Moment so aus, kriege aber immer nur Fehlermeldungen, sprich kann nicht mal notepad.exe starten..:

Code:
if not LogonUser
       (pchar(adminuser),pchar(admindomain),pchar(passwort),LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT,hToken) then
       begin
            logfileschreiben('LOGON FAILURE (Logon32_Interactive): Errorcode: '+inttostr(getlasterror));
       end else
       begin
            logfileschreiben('Interactive Logon successful!');
       end;
       if not ImpersonateLoggedOnUser(hToken) then
       begin
            logfileschreiben('LOGON FAILURE (ImpersonateLoggedonUser): Errorcode: '+inttostr(getlasterror));
       end else
       begin
            logfileschreiben('Impersonate Logon successful!');
       end;
       with sinfo do
       begin
            cb:=sizeof(sinfo);
            lpreserved:=nil;
            lpdesktop:=nil;
            lptitle:=nil;
            dwFlags:=0;
            cbReserved2:=0;
            lpReserved2:=nil;
            dwysize:=0;
       end;
       if not createprocessasuser(htoken,nil,pchar(command.text),nil,nil,true,0,nil,nil,sinfo,pinfo) then
       begin
            logfileschreiben('ERROR: CANNOT CreateProcessAsUser, CreateProcess Error: '+inttostr(getlasterror));
       end else
       begin
          repeat
              sleep(500);
              application.ProcessMessages;
              GetExitCodeProcess(pinfo.hProcess,ergebnis2);
          until ergebnis2<>STILL_ACTIVE;
       end;
       closehandle(htoken);
Hat jemand ein lauffähiges Beispiel oder eine Idee warum bei mir folgende Errorcodes erscheinen:

16.11.2004,08:01:48:Installing: notepad.exe
16.11.2004,08:01:48:Install-Type, Installation per: ADMIN
16.11.2004,08:01:48:Installation per USER or ADMIN selected.
16.11.2004,08:01:48:Installation per ADMIN Account running...
16.11.2004,08:01:48:Using Admin-Account: Domain\User
16.11.2004,08:01:48:Admin-Account password seems to be correct, try to install...
16.11.2004,08:01:48:Interactive Logon successful!
16.11.2004,08:01:48:Impersonate Logon successful!
16.11.2004,08:01:48:ERROR: CANNOT CreateProcessAsUser, CreateProcess Error: 2
16.11.2004,08:01:48:...Installed Setup removed from INI-File.
16.11.2004,08:01:48:Next Setup
16.11.2004,08:01:48:Awaiting possible reboot...
16.11.2004,08:01:50:..:: Closing Application ::..
16.11.2004,08:01:50:Awaiting termination - Installing

die ERROR Nummer ändert sich irgendwie immer.. war auch schon bei 5 oder bei 1314
  Mit Zitat antworten Zitat