Thema: Delphi CrateProcessWithLogonW

Einzelnen Beitrag anzeigen

Assarbad
(Gast)

n/a Beiträge
 
#11

Re: CrateProcessWithLogonW

  Alt 27. Apr 2004, 10:44
Was ham wir denn alter Mann?

Windows 2000 oder höher ist erfüllt?

Der Prototyp sieht etwa so aus (insbesondere ist er als STDCALL deklariert?):

Delphi-Quellcode:
type
(* Bei Delphi 4 hat Borland noch keine Übersetzung dieser Struktur drin, dehalb
  hier! Aber Achtung, die ANSI-Struct wurde mit Pointer statt mit PAnsiChar oder
  PChar übersetzt für die unten aufgeführten PWideChars.
*)

  STARTUPINFOW = record
    cb: DWORD;
// Achtung, ab hier ist's anders als Borland's Übersetzung
    lpReserved: PWideChar;
    lpDesktop: PWideChar;
    lpTitle: PWideChar;
// ---- Bis hier
    dwX: DWORD;
    dwY: DWORD;
    dwXSize: DWORD;
    dwYSize: DWORD;
    dwXCountChars: DWORD;
    dwYCountChars: DWORD;
    dwFillAttribute: DWORD;
    dwFlags: DWORD;
    wShowWindow: Word;
    cbReserved2: Word;
    lpReserved2: PByte;
    hStdInput: THandle;
    hStdOutput: THandle;
    hStdError: THandle;
  end;

function CreateProcessWithLogonW(
  lpUsername,
  lpDomain,
  lpPassword: PWideChar;
  dwLogonFlags: DWORD;
  lpApplicationName,
  lpCommandLine: PWideChar;
  dwCreationFlags: DWORD;
  lpEnvironment: Pointer;
  lpCurrentDirectory: PWideChar;
  var lpStartupInfo: STARTUPINFOW;
  var lpProcessInfo: PROCESS_INFORMATION
  ): BOOL; stdcall;
  external 'advapi32.dll';
AUf Delphi 3 hat Borland noch nicht die Orginalnamen aus den Headern für Strukturen mit drin, also aufpassen und zB PROCESS_INFORMATION evtl umbenennen

Notfalls ne Mail mit Source an mich und ich schau mal drüber.
  Mit Zitat antworten Zitat