_execlp, _wexeclp
Lädt neue untergeordnete Prozesse und führt sie aus.
Wichtig
Diese API kann nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden. Weitere Informationen finden Sie im Artikel CRT functions not supported in Universal Windows Platform apps (In Apps für die universelle Windows-Plattform nicht unterstützte CRT-Funktionen).
Syntax
intptr_t _execlp(
const char *cmdname,
const char *arg0,
... const char *argn,
NULL
);
intptr_t _wexeclp(
const wchar_t *cmdname,
const wchar_t *arg0,
... const wchar_t *argn,
NULL
);
Parameter
cmdname
Pfad der auszuführenden Datei.
arg0, ... argn
Liste von Zeigern zu Parametern.
Rückgabewert
Bei Erfolg kehren diese Funktionen nicht zum aufrufenden Prozess zurück. Der Rückgabewert -1 gibt einen Fehler an. In diesem Fall wird die globale Variable errno festgelegt.
errno-Wert | BESCHREIBUNG |
---|---|
E2BIG | Für die Argumente und die Umgebungseinstellungen werden mehr als 32 KB Speicherplatz benötigt. |
EACCES | Für die angegebene Datei ist eine Sperr- oder Freigabeverletzung aufgetreten. |
EINVAL | Ungültiger Parameter. |
EMFILE | Zu viele Dateien geöffnet (die angegebene Datei muss geöffnet werden, damit festgestellt werden kann, ob sie ausführbar ist). |
ENOENT | Die Datei oder der Pfad wurde nicht gefunden. |
ENOEXEC | Die angegebene Datei ist nicht ausführbar oder hat ein ungültiges Format für eine ausführbare Datei. |
ENOMEM | Es ist nicht genügend Arbeitsspeicher, um den neuen Prozess auszuführen; der verfügbare Arbeitsspeicher ist beschädigt; oder es ist ein ungültiger Block vorhanden, was darauf hinweist, dass der aufrufende Prozess nicht ordnungsgemäß zugeordnet wurde. |
Weitere Informationen zu diesen und anderen Rückgabecodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.
Bemerkungen
Jede dieser Funktionen lädt einen neuen Prozess und führt diesen aus, übergibt jedes Befehlszeilenargument als separaten Parameter und verwendet die PATH-Umgebungsvariable, um die auszuführende Datei zu finden.
Die _execlp-Funktionen überprüfen ihre Parameter. Wenn cmdname oder arg0 ein NULL-Zeiger oder eine leere Zeichenfolge ist, rufen diese Funktionen den Handler für ungültige Parameter auf, wie unter Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, legen diese Funktionen errno auf EINVAL fest und geben -1 zurück. Es wird kein neuer Prozess gestartet.
Anforderungen
Funktion | Erforderlicher Header | Optionaler Header |
---|---|---|
_execlp | <process.h> | <errno.h> |
_wexeclp | <process.h> oder <wchar.h> | <errno.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Compatibility.
Beispiel
Siehe das Beispiel in _exec-, _wexec-Funktionen.
Siehe auch
Prozess- und Umgebungssteuerung
_exec, _wexec Functions
Abbrechen
atexit
exit, _Exit, _exit
_onexit, _onexit_m
_spawn, _wspawn Functions
system, _wsystem