Udostępnij za pośrednictwem


_spawnlpe, _wspawnlpe

Tworzy i uruchamia nowy proces.

Ważna uwagaWażne

Ten interfejs API nie można używać w aplikacji, których wykonywanie w Środowisko wykonawcze systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsługiwane przez /ZW.

intptr_t _spawnlpe(
   int mode,
   const char *cmdname,
   const char *arg0,
   const char *arg1,
   ... const char *argn,
   NULL,
   const char *const *envp 
);
intptr_t _wspawnlpe(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *arg0,
   const wchar_t *arg1,
   ... const wchar_t *argn,
   NULL,
   const wchar_t *const *envp 
);

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 to zazwyczaj wskaźnik do cmdname.Argumenty arg1 przez argn są wskaźnikami do ciągów znaków, które tworzą nowe listy argumentów.Po argn, 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 _spawnlpe lub _wspawnlpe (_P_WAIT z ustawieniem dla mode) jest stanem wyjścia nowego procesu.Wartość zwracana z asynchronicznej _spawnlpe lub _wspawnlpe (_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 proces specjalnie używa argumentu różną od zera do wywołania exit rutynowych.Jeśli nowy proces nie zostanie jawnie ustawiona stanem wyjścia pozytywne, stanem wyjścia dodatnia wskazuje nietypowe wyjście, spowodowane przerwaniem działania 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 errno, _doserrno, _sys_errlist, and _sys_nerr.

Uwagi

Każda z tych funkcji tworzy nowy proces jest wykonywany, przekazuje każdego argumentu wiersza polecenia jako oddzielnego parametru i przekazuje 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 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.

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

_spawnlpe

<process.h>

_wspawnlpe

<stdio.h> lub <wchar.h>

Informacji dotyczących zgodności, zobacz Zgodność.

Przykład

Zobacz przykład w _spawn, _wspawn — Funkcje.

Odpowiednik w programie .NET Framework

Zobacz też

Informacje

Procedury kontroli środowiska

_spawn, _wspawn — Funkcje

przerwij

atexit

_exec, _wexec — Funkcje

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem