Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi CrateProcessWithLogonW (https://www.delphipraxis.net/20976-crateprocesswithlogonw.html)

Assarbad 27. Apr 2004 10:44

Re: CrateProcessWithLogonW
 
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 :mrgreen:

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


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:32 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz