_spawnl, _wspawnl
Vytvoří a spustí nový proces.
Dů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 _spawnl(
int mode,
const char *cmdname,
const char *arg0,
const char *arg1,
... const char *argn,
NULL
);
intptr_t _wspawnl(
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
Hodnota vrácená ze synchronního _spawnl nebo _wspawnl (_P_WAIT určený pro mode) je stav ukončení nového procesu.Hodnota vrácená z asynchronního _spawnl nebo _wspawnl (_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.
Tyto funkce ověřují své parametry.Pokud je cmdname nebo arg0 prázdný řetězec nebo ukazatel s hodnotou null, je vyvolána neplatná obslužná rutina 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.
Poznámky
Každá z těchto funkcí vytvoří a spustí nový proces a předá každý argument příkazového řádku jako samostatný parametr.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
_spawnl |
<process.h> |
_wspawnl |
<stdio.h> nebo <wchar.h> |
Další informace o kompatibilitě naleznete v tématu Kompatibilita.
Příklad
Viz příklad v části Funkce _spawn, _wspawn.