Freigeben über


_execve, _wexecve

Lädt und führt neue untergeordnete Prozesse aus.

Wichtiger HinweisWichtig

Diese API kann nicht in den Anwendungen verwendet werden, die in der Windows Runtime ausführen.Weitere Informationen finden Sie unter CRT-Funktionen unterstützt nicht mit /ZW.

intptr_t _execve( const char *cmdname, const char *const *argv, const char *const *envp ); intptr_t _wexecve( const wchar_t *cmdname, const wchar_t *const *argv, const wchar_t *const *envp );

Parameter

  • cmdname
    Pfad der Datei auszuführen.

  • argv
    Array von Zeigern auf Parameter.

  • envp
    Array von Zeigern auf den Umgebungseinstellungen.

Rückgabewert

Wenn erfolgreich, geben diese Funktionen nicht an den aufrufenden Prozess zurück.Ein Rückgabewert von - 1 gibt einen Fehler an, in diesem Fall die globale Variable errno festgelegt ist.

errno-Wert

Beschreibung

E2BIG

Der Speicherplatz, der für die Argumente und die Umgebungseinstellungen benötigt wird, als 32 KB.

EACCES

Die angegebene Datei ist eine Sperre oder eine Zugriffsverletzung.

EINVAL

Ungültiger Parameter.

EMFILE

Zu viele Dateien geöffnet (die angegebene Datei muss geöffnet sein, um zu bestimmen, ob sie ausgeführt werden kann).

ENOENT

Die Datei oder der Pfad nicht gefunden.

ENOEXEC

Die angegebene Datei ist nicht ausführbar oder hat ein ungültiges Format der ausführbaren Datei.

ENOMEM

Nicht genügend Arbeitsspeicher verfügbar ist, den neuen Prozess auszuführen; der verfügbare Arbeitsspeicher ist beschädigt; oder ein ungültiger Block vorhanden und angibt, 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.

Hinweise

Jede dieser Funktionen lädt und führt einen neuen Prozess aus und gibt ein Array von Zeigern auf den Befehlszeilenargumenten und ein Array von Zeigern auf den Umgebungseinstellungen.

_execve_wexecve überprüfen und ihre Parameter.Wenn cmdname ein NULL-Zeiger ist, oder wenn argv ein NULL-Zeiger, Zeiger in ein leeres Array ist oder wenn das Array eine leere Zeichenfolge als Erstes Argument enthält, rufen diese Funktionen den ungültigen Parameterhandler auf, wie in Parametervalidierung beschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, dieses Funktionen festgelegte errno zu EINVAL und zu geben -1.Kein Prozess gestartet.

Anforderungen

Funktion

Erforderlicher Header

Optionaler Header

_execve

<process.h>

<errno.h>

_wexecve

<process.h> oder <wchar.h>

<errno.h>

Weitere Kompatibilitätsinformation finden Sie unter Kompatibilität in der Einführung.

Beispiel

Im Beispiel in _exec, _wexec Funktionen.

.NET Framework-Entsprechung

Siehe auch

Referenz

Prozess- und Umgebungssteuerelement

_exec, _wexec Funktionen

Abbruch

atexit

Beenden, _exit

_onexit, _onexit_m

_spawn, _wspawn Funktionen

System, _wsystem