Sdílet prostřednictvím


_spawnlp, _wspawnlp

Vytvoří a spustí nový proces.

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

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

intptr_t _spawnlp(
   int mode,
   const char *cmdname,
   const char *arg0,
   const char *arg1,
   ... const char *argn,
   NULL 
);
intptr_t _wspawnlp(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *arg0,
   const wchar_t *arg1,
   ... const wchar_t *argn,
   NULL 
);

Parametry

  • mode
    Režim spuštění pro volající proces.

  • cmdname
    Cesta souboru, který má být spuštěn.

  • arg0, arg1, ... argn
    Seznam ukazatelů na argumenty.Argument arg0 je obvykle ukazatel na cmdname.Argumenty arg1 až argn jsou ukazatele na znakové řetězce tvořící nový seznam argumentů.Po argn musí následovat ukazatel NULL pro označení konce seznamu argumentů.

Vrácená hodnota

Návratová hodnota ze synchronního _spawnlp nebo _wspawnlp (_P_WAIT určený pro mode) je stav ukončení nového procesu.Hodnota vrácená z asynchronního _spawnlp nebo _wspawnlp (_P_NOWAIT nebo _P_NOWAITO pro mode) je obslužná rutina procesu.Stav ukončení je 0, pokud proces skončil normálně.Můžete nastavit stav ukončení na nenulovou hodnotu, když spuštěný proces konkrétně zavolá rutinu exit s nenulovým argumentem.Pokud nový proces explicitně nenastavil pozitivní koncový stav, označuje pozitivní koncový stav abnormální ukončení zrušením nebo přerušením.Návratová hodnota –1 označuje chybu (není spuštěn nový proces).V tomto případě je errno nastavena na jednu z následujících hodnot.

  • E2BIG
    Seznam argumentů přesahuje 1024 bajtů.

  • EINVAL
    Argument mode je neplatný.

  • ENOENT
    Soubor nebo cesta nebyla nenalezena.

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

  • ENOMEM
    Ke spuštění nového procesu není k dispozici dostatek paměti.

Další informace o těchto a dalších návratových kódech naleznete v části _doserrno, errno, _sys_errlist, and _sys_nerr.

Poznámky

Každá z těchto funkcí vytvoří a spustí nový proces, přičemž předá každý argument příkazového řádku jako samostatný parametr a použije proměnnou prostředí PATH k vyhledání souboru pro spuštění.

Tyto funkce ověřují své parametry.Pokud je cmdname nebo arg0 prázdný řetězec nebo ukazatel s hodnotou null, tyto funkce vyvolají výjimku neplatného parametru, jak je popsáno v tématu Ověření parametru.Pokud smí provádění pokračovat, tyto funkce nastaví errno na EINVAL a vrátí -1.Není vytvořen žádný nový proces.

Požadavky

Rutina

Požadované záhlaví

_spawnlp

<process.h>

_wspawnlp

<stdio.h> nebo <wchar.h>

Další informace o kompatibilitě naleznete v tématu Kompatibilita.

Příklad

Viz příklad v části Funkce _spawn, _wspawn.

Ekvivalent v rozhraní .NET Framework

Viz také

Referenční dokumentace

Řízení procesů a prostředí

_spawn, _wspawn – funkce

abort

atexit

_exec, _wexec – funkce

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem