Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
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 _execvp(
const char *cmdname,
const char *const *argv
);
intptr_t _wexecvp(
const wchar_t *cmdname,
const wchar_t *const *argv
);
Parameter
cmdname
Pfad der auszuführenden Datei.
argv
Array von Zeigern zu Parametern.
Rückgabewert
Bei erfolgreicher Ausführung kehren diese Funktionen nicht zum aufrufenden Prozess zurück. Ein Rückgabewert von -1 gibt einen Fehler an, in diesem Fall wird die errno globale Variable festgelegt.
Wert vom Typ errno |
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 werden geöffnet (die angegebene Datei muss geöffnet werden, um zu bestimmen, ob sie ausführbar ist). |
ENOENT |
Die Datei oder der Pfad wurde nicht gefunden. |
ENOEXEC |
Die angegebene Datei ist nicht ausführbar oder weist ein ungültiges Dateiformat für ausführbare Dateien auf. |
ENOMEM |
Nicht genügend Arbeitsspeicher ist verfügbar, um den neuen Prozess auszuführen; Der verfügbare Arbeitsspeicher wurde beschädigt; oder es ist ein ungültiger Block vorhanden, der angibt, dass der aufrufende Prozess nicht ordnungsgemäß zugeordnet wurde. |
Weitere Informationen zu diesen und anderen Rückgabecodes finden Sie unter , , _doserrno, _sys_errlistund _sys_nerr.errno
Hinweise
Jede dieser Funktionen lädt einen neuen Prozess, führt ihn aus, übergibt ein Array von Zeigern auf Befehlszeilenargumente und sucht die auszuführende Datei mithilfe der PATH-Umgebungsvariablen.
Die _execvp-Funktionen überprüfen ihre Parameter. Diese Funktionen rufen den ungültigen Parameterhandler auf, wie in der Parameterüberprüfung beschrieben, wenn:
cmdnameist ein Nullzeiger,argvist entweder ein Nullzeiger oder Zeiger auf ein leeres Array,- das Array enthält eine leere Zeichenfolge als erstes Argument.
Wenn die Ausführung vom Handler fortgesetzt werden darf, legen errno diese Funktionen auf EINVAL, und geben -1 zurück. Es wird kein Prozess gestartet.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Anforderungen
| Funktion | Erforderlicher Header | Optionaler Header |
|---|---|---|
_execvp |
<process.h> | <errno.h> |
_wexecvp |
<process.h> oder <wchar.h> | <errno.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
Sehen Sie sich das Beispiel in _exec, _wexec Funktionen an.
Siehe auch
Prozess- und Umgebungskontrolle
_exec, _wexec Funktionen
abort
atexit
exit, _Exit_exit
_onexit, _onexit_m
_spawn, _wspawn Funktionen
system, _wsystem