_spawnl, _wspawnl
Tworzy i uruchamia nowy proces.
Ważne |
---|
Ten interfejs API nie można używać w aplikacji, których wykonywanie w czasie wykonywania systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsługiwane przez /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
Tryb wykonywania dla procesu wywołującego.cmdname
Ścieżka pliku ma być wykonane.arg0, arg1, ... argn
Lista wskaźników do argumentów.arg0 Argument jest zwykle wskaźnik do cmdname.Argumenty arg1 przez argn są wskaźnikami do ciągów znaków, tworząc nowe listy argumentów.Po argn, musi być NULL wskaźnik, aby zaznaczyć koniec listy argumentów.
Wartość zwracana
Wartość zwracana z synchronicznego _spawnl lub _wspawnl (_P_WAIT z ustawieniem dla mode) jest stanem wyjścia nowego procesu.Wartość zwracana z asynchronicznej _spawnl lub _wspawnl (_P_NOWAIT lub _P_NOWAITO z ustawieniem dla mode) jest uchwytem procesu.Stanem wyjścia jest 0, jeśli proces zakończył się normalnie.Stanem wyjścia można ustawić wartość różną od zera, jeśli wezwania zduplikowanego procesu exit rutynowe z argumentem różną od zera.Jeśli nowy proces nie zostanie jawnie ustawiona stanem wyjścia pozytywne, stanem wyjścia dodatnia wskazuje nietypowe wyjście z przerwania lub przerwania.Zwracana wartość wynosząca –1 wskazuje na błąd (nowy proces nie jest uruchomiony).W takim przypadku errno jest ustawiona na jeden z następujących wartości.
E2BIG
Lista argumentów przekracza 1024 bajty.EINVAL
modeargument jest nieprawidłowy.ENOENT
Nie znaleziono pliku lub ścieżki.ENOEXEC
Określony plik nie jest wykonywalny lub ma nieprawidłowy format plików wykonywalnych.ENOMEM
Uruchamia nowy proces jest za mało pamięci.
Aby uzyskać więcej informacji na temat tych i innych kody powrotne, zobacz _doserrno, errno, _sys_errlist i _sys_nerr.
Te funkcje sprawdzania poprawności ich parametrów.Jeśli każda cmdname lub arg0 jest ciągiem pustym lub pusty wskaźnik, program obsługi nieprawidłowy parametr jest wywoływana, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, ustaw te funkcje errno do EINVALi zwraca –1.Uruchamiany jest nie nowy proces.
Uwagi
Każda z tych funkcji tworzy i uruchamia nowy proces, przekazując każdego argumentu wiersza polecenia jako osobny parametr.
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_spawnl |
<process.h> |
_wspawnl |
<stdio.h> lub <wchar.h> |
Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.
Przykład
Zobacz przykład w _spawn, funkcje _wspawn.