Einzelnen Beitrag anzeigen

waldforest

Registriert seit: 8. Mai 2005
366 Beiträge
 
Delphi XE3 Enterprise
 
#13

AW: ShellExecute, Batch über runas starten

  Alt 12. Sep 2016, 06:45
Hallo,
mir schwebt eher der eine Möglichkeit aus meiner Anwendung heraus vor.
Ich habe da Problem wie folgt gelöst.

Delphi-Quellcode:
function RunAsWithLogon(const User, PW, Application, CmdLine: WideString): DWORD;
var
  si : TStartupInfoW;
  pif : TProcessInformation;
  s : WideString;
begin
  ZeroMemory(@si, sizeof(si));
  si.cb := sizeof(si);
  si.dwFlags := STARTF_USESHOWWINDOW;
  si.wShowWindow := 1;

  if CmdLine = 'then
    s := Application
  else
    s := Application + ' ' + CmdLine;

  SetLastError(0);
  CreateProcessWithLogonW(PWideChar(User), nil, PWideChar(PW), 0, nil, PWideChar(s), CREATE_DEFAULT_ERROR_MODE, nil,
    nil, @si, @pif);
  Result := GetLastError;
end;
mfg wf
  Mit Zitat antworten Zitat