Sdílet prostřednictvím


_spawnvpe _wspawnvpe

Vytvořit a spustit nový proces.

Důležitá poznámkaDůležité

Toto rozhraní API nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW.

intptr_t _spawnvpe(
   int mode,
   const char *cmdname,
   const char *const *argv,
   const char *const *envp 
);
intptr_t _wspawnvpe(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *const *argv,
   const wchar_t *const *envp 
);

Parametry

  • mode
    Spuštění režimu pro proces, který volá

  • cmdname
    Cestu k souboru, který bude proveden

  • argv
    Pole ukazatelů pro argumenty.Argument argv[0] je obvykle ukazatel na cestu v reálném režimu nebo na název programu v chráněném režimu a argv[1] prostřednictvím argvn jsou ukazatele do řetězce znaků tvořící nový seznam argumentů.Argument argvn + 1] musí být NULL ukazatel na konec seznamu argumentů.

  • envp
    Pole ukazatelů pro nastavení prostředí

Vrácená hodnota

Hodnota vrácená synchronního _spawnvpe nebo _wspawnvpe (_P_WAIT určený pro mode) je stav ukončení nový proces.Hodnota vrácená asynchronní _spawnvpe nebo _wspawnvpe (_P_NOWAIT nebo _P_NOWAITO určený pro mode) je popisovač procesu.Stav ukončení je 0, je-li proces ukončen normálně.Můžete nastavit stav ukončení nenulovou hodnotu, pokud proces konkrétně nevolá exit rutinní s nenulovou argument.Je-li nový proces stav pozitivní ukončit explicitně nenastavili, označuje stav pozitivní konec abnormálního ukončení přerušení nebo přerušení.Vrácená hodnota –1 označuje chybu (není spuštěn nový proces).V tomto případě errno je nastavena na jednu z následujících hodnot:

  • E2BIG
    Seznam argumentů přesahuje 1024 bajtů

  • EINVAL
    modeargument není platný.

  • ENOENT
    Soubor nebo cesta nebyla nalezena.

  • ENOEXEC
    Zadaný soubor není spustitelný soubor nebo má neplatný formát spustitelného souboru

  • ENOMEM
    Není dostatek paměti je k dispozici pro spuštění nového procesu

Viz _doserrno, kód chyby, _sys_errlist a _sys_nerr Další informace o těchto a jiných návratových kódů.

Poznámky

Každá z těchto funkcí vytvoří a spustí nový proces předávání pole ukazatelů argumenty příkazového řádku a pole ukazatelů pro nastavení prostředí.Pomocí těchto funkcí PATH proměnné prostředí, vyhledejte soubor, který chcete spustit.

Tyto funkce ověření jejich parametrů.Pokud cmdname nebo argv je ukazatel s hodnotou null, nebo pokud argv odkazuje na ukazatel s hodnotou null, nebo argv[0] je prázdný řetězec, je vyvolána obslužná rutina neplatný parametr, jak je popsáno v Ověření parametrů .Pokud je povoleno zpracování, chcete-li pokračovat, tyto funkce set errno na EINVALa vrátí -1.Je vytvořen žádný nový proces.

Požadavky

Byla zahájena rutina

Požadované záhlaví

_spawnvpe

<stdio.h> nebo <process.h>

_wspawnvpe

<stdio.h> nebo <wchar.h>

Další informace o kompatibilitě, viz Compatibility v úvodu.

Příklad

Viz příklad v _spawn, _wspawn funkce.

Ekvivalent v rozhraní .NET Framework

Viz také

Referenční dokumentace

abort

atexit

_exec funkce _wexec

exit, _exit

_flushall

_getmbcp

_onexit _onexit_m

_setmbcp

system, _wsystem