Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Tworzy i wykonuje nowy proces.
Ważne
Tego interfejsu API nie można używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows. Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane w aplikacjach platforma uniwersalna systemu Windows.
Składnia
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
Tryb wykonywania dla procesu wywoływania.
cmdname
Ścieżka pliku do wykonania.
arg0, , arg1... argN
Lista wskaźników do argumentów. Argument arg0 jest zwykle wskaźnikiem do cmdname. Argumenty arg1 przez argN to wskaźniki do ciągów znaków tworzących nową listę argumentów. Po argNznaku musi istnieć NULL wskaźnik, aby oznaczyć koniec listy argumentów.
Wartość zwracana
Wartość zwracana z synchronicznego _spawnl lub _wspawnl (_P_WAIT określonego dla mode) jest stanem zakończenia nowego procesu. Wartość zwracana z asynchronicznego _spawnl lub _wspawnl (_P_NOWAIT lub _P_NOWAITO określonego dla modeelementu ) jest dojściem procesu. Stan zakończenia to 0, jeśli proces zakończył się normalnie. Stan wyjścia można ustawić na wartość niezerową, jeśli proces zduplikowany wywołuje exit procedurę z argumentem niezerowym. Jeśli nowy proces nie ustawił jawnie pozytywnego stanu zakończenia, dodatni stan zakończenia wskazuje nietypowe wyjście z przerwania lub przerwania. Wartość zwracana -1 wskazuje błąd (nowy proces nie został uruchomiony). W tym przypadku errno parametr jest ustawiony na jedną z następujących wartości.
| Wartość | Opis |
|---|---|
E2BIG |
Lista argumentów przekracza 1024 bajty. |
EINVAL |
mode argument jest nieprawidłowy. |
ENOENT |
Nie można odnaleźć pliku lub ścieżki. |
ENOEXEC |
Określony plik nie jest wykonywalny lub ma nieprawidłowy format pliku wykonywalnego. |
ENOMEM |
Za mało pamięci do wykonania nowego procesu. |
Aby uzyskać więcej informacji na temat tych i innych kodów powrotnych, zobacz errno, _doserrno, _sys_errlisti _sys_nerr.
Te funkcje weryfikują swoje parametry. Jeśli ciąg cmdname lub arg0 jest pustym ciągiem lub wskaźnikiem o wartości null, wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Walidacja parametru. Jeśli wykonywanie jest dozwolone do kontynuowania, te funkcje mają wartość errno EINVALi zwracają wartość -1. Nie jest duplikowany żaden nowy proces.
Uwagi
Każda z tych funkcji tworzy i wykonuje nowy proces, przekazując każdy argument wiersza polecenia jako oddzielny parametr.
Wymagania
| Procedura | Wymagany nagłówek |
|---|---|
_spawnl |
<process.h> |
_wspawnl |
<stdio.h> lub <wchar.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
Zobacz przykład w _spawn_wspawn temacie , functions.
Zobacz też
Kontrola procesu i środowiska
_spawn, _wspawn funkcje
abort
atexit
_exec, _wexec funkcje
exit, , _Exit_exit
_flushall
_getmbcp
_onexit, _onexit_m
_setmbcp
system, _wsystem