Código Delphi
[-]var
si: TStartupInfo = (cb: SizeOf(si); dwFlags: STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK; wShowWindow: SW_SHOWNORMAL);
pi: TProcessInformation;
function CreateProcessWithLogonW(lpUsername, lpDomain, lpPassword: PWideChar; dwLogonFlags: Cardinal;
lpApplicationName, lpCommandLine: PWideChar; dwCreationFlags: Cardinal; lpEnvironment: Pointer; lpCurrentDirectory: PWideChar;
var lpStartupInfo: TStartupInfo; var lpProcessInfo: TProcessInformation): LongBool; stdcall; external 'advapi32';
procedure TForm1.Button1Click(Sender: TObject);
begin
if not CreateProcessWithLogonW('Administrator', nil, '123456', 1, nil, 'cmd', 0, nil, nil, si, pi) then
ShowMessage(SysErrorMessage(GetLastError));
end;
PD: no se por que usas STARTF_USESTDHANDLES si no estas definiendo hStdInput, hStdOutput, ó hStdError, y hasta STARTF_USESHOWWINDOW me suena innecesario pues de todas formas estas usando su Default.
Usa las etiquetas para poner tu código!!!
Saludos