_spawnvpe, _wspawnvpe
Tworzyć i pracować z nowego procesu.
![]() |
---|
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 _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
Tryb wykonywania dla proces wywoływaniacmdname
Ścieżka pliku do wykonaniaargv
Tablica wskaźników do argumentów.Argument argv[0] jest zwykle wskaźnik do ścieżki w trybie rzeczywistym lub nazwę programu w trybie chronionym, i argv[1] przez argvn są wskaźnikami do ciągów znaków, tworząc nowe listy argumentów.Argument argvn + 1] musi być NULL wskaźnik, aby zaznaczyć koniec listy argumentów.envp
Tablica wskaźników do ustawień środowiska
Wartość zwracana
Wartość zwracana z synchronicznego _spawnvpe lub _wspawnvpe (_P_WAIT z ustawieniem dla mode) jest stanem wyjścia nowego procesu.Wartość zwracana z asynchronicznej _spawnvpe lub _wspawnvpe (_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 bajtyEINVAL
modeargument jest nieprawidłowy.ENOENT
Nie znaleziono pliku lub ścieżkiENOEXEC
Określony plik nie jest wykonywalny lub ma nieprawidłowy format plików wykonywalnychENOMEM
Uruchamia nowy proces jest za mało pamięci
Zobacz _doserrno, errno, _sys_errlist i _sys_nerr więcej informacji na temat tych i innych kodów zwrotnych.
Uwagi
Każda z tych funkcji tworzy i uruchamia nowy proces, przekazanie tablicy wskaźników do argumentów wiersza polecenia oraz szereg wskaźników do ustawień środowiska.Te funkcje za pomocą PATH zmiennej środowiskowej, aby znaleźć plik, aby wykonać.
Te funkcje sprawdzania poprawności ich parametrów.Jeśli każda cmdname lub argv jest pusty wskaźnik, lub jeśli argv wskazuje na pusty wskaźnik lub argv[0] jest ciąg pusty, 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.
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_spawnvpe |
<stdio.h> lub <process.h> |
_wspawnvpe |
<stdio.h> lub <wchar.h> |
Aby uzyskać dodatkowe informacje o zgodności, zobacz zgodności we wprowadzeniu.
Przykład
Zobacz przykład w _spawn, funkcje _wspawn.