Procedury kontroli środowiska
Procedur kontroli procesu należy używać do uruchamiania, zatrzymywania i zarządzanie procesami z w ramach programu.Użyj procedur kontroli środowiska naturalnego i zmienianie informacji o środowisku systemu operacyjnego.
Proces i funkcje kontroli środowiska naturalnego
Rozpoczęto wykonywanie procedury |
Użyj |
.NET Framework równoważne |
---|---|---|
Przerwać proces bez opróżniania buforów lub wywołaniem funkcji zarejestrowanych przez atexit i_onexit |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Test na błąd logiczny |
||
_ASSERT, _ASSERTE makr |
Podobny do assert, ale jest dostępne tylko w wersjach debugowania bibliotek |
|
Harmonogram procedur wykonywania na zakończenie programu |
||
Tworzenie nowego wątku procesu system operacyjny Windows |
||
Wykonać exit zakończenie procedury (takie jak opróżniania buforów), następnie zwrócić sterowanie do programu wywołującego bez kończenia procesu |
||
Wykonać _exit zakończenie procedury, następnie zwrócić sterowanie do programu wywołującego bez kończenia procesu |
||
Poczekaj, aż inny proces kończy działanie |
||
Zakończenie wątku systemu operacyjnego Windows |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Wykonanie nowego procesu z listy argumentów |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonanie nowego procesu z listy argumentów i środowiska naturalnego |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonywanie nowego procesu przy użyciu PATH zmienna i argument listy |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonywanie nowego procesu przy użyciu PATH zmiennej, biorąc pod uwagę środowiska i listy argumentów |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonanie nowego procesu z argumentu tablicy |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonanie nowego procesu z argumentu tablica oraz biorąc pod uwagę środowiska |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonywanie nowego procesu przy użyciu PATH zmienna i argument tablica |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonywanie nowego procesu przy użyciu PATH zmiennej, biorąc pod uwagę środowiska i argument tablica |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wywołanie funkcji zarejestrowanych przez atexit i _onexit, opróżnić wszystkie bufory, zamknij wszystkie otwierać pliki i zakończyć proces |
||
Zakończenie procesu natychmiast, bez wywołania atexit lub _onexit lub opróżniania buforów |
||
Pobieranie wartości zmiennej środowiskowej |
||
Pobierz numer identyfikacyjny ID procesu |
||
Przywróć zapisane stosu środowiska; Umożliwia wykonanie nielokalnegoto |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Harmonogram procedur wykonywania na zakończenie programu; zachowania zgodności z programem Microsoft C/C++ w wersji 7.0 i wcześniejszych |
||
Poczekaj, aż procesor poleceń nowy i zamknąć strumienia skojarzone potoku |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Komunikat o błędzie wydruku |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Utworzyć potoku do odczytywania i zapisywania |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Utworzenie potoku i wykonywanie polecenia |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Dodawanie lub zmiana wartości zmiennej środowiskowej |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Wysyłanie sygnału do procesu wywołującego |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Zapisz stosu środowiska; Służy do wykonywania innych niż lokalnegoto |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Uchwyt sygnału przerwania |
Nie dotyczy.Aby wywołać standardowych funkcji C, należy użyć PInvoke.Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy. |
|
Tworzenie i wykonywanie nowego procesu z listy argumentów określonych |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu z listy argumentów określonych i środowiska naturalnego |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu przy użyciu PATH liście określony argument i zmiennej |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu przy użyciu PATH zmienna, określonego środowiska i listy argumentów |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu z określonego argumentu tablicy |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu określonego środowiska i argument tablica |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu przy użyciu PATH zmienna i określony argument tablica |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Tworzenie i wykonywanie nowego procesu przy użyciu PATH zmienna, określonego środowiska i argument tablica |
Klasa System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo, klasa |
|
Wykonanie polecenia systemu operacyjnego |
Klasa System::Diagnostics::ProcessStartInfo, System::Diagnostics::Process, klasa |
W systemie operacyjnym Windows zduplikowanego procesu jest równoważne do tarła procesu.Można użyć dowolnego procesu _cwait oczekiwania dla innego procesu, dla którego znany jest identyfikator procesu.
Różnica między _exec i _spawn rodzin jest to, że _spawn funkcja może zwrócić sterowanie z nowego procesu do procesu wywołującego.W _spawn działać wywołującego procesu i nowy proces znajdują się w pamięci chyba że _P_OVERLAY jest określony.W _exec funkcji, nowy proces nakładki, proces wywołujący, więc sterowania nie mogą powrócić do procesu wywołującego, chyba że wystąpi błąd podczas próby rozpoczęcia realizacji nowego procesu.
Różnice między funkcjami w _exec rodziny, jak również między tymi w _spawn rodziny, obejmować metody lokalizowanie plików, które mają być zrealizowane jako nowy proces, formularz, w którym argumenty są przekazywane do nowego procesu i metody ustalania środowiska, jak pokazano w poniższej tabeli.Funkcja, która przekazuje listy argumentów, gdy liczba argumentów jest stały lub jest znany w czasie kompilacji.Funkcja, która przekazuje wskaźnik do tablicy zawierającej argumenty, gdy liczba argumentów jest ustalany w czasie wykonywania.Informacje w poniższej tabeli przedstawiono stosuje się również do odpowiedników szerokich znaków z _spawn i _exec funkcji.
rodzin funkcji _spawn i _exec
Funkcje |
Zlokalizuj plik za pomocą zmiennej PATH |
Przekazywanie argumentów Konwencji |
Ustawienia środowiska |
---|---|---|---|
_execl, _spawnl |
Nr |
Lista |
Odziedziczone proces wywoływania |
_execle, _spawnle |
Nr |
Lista |
Wskaźnik do tabeli środowiska dla nowego procesu jest przekazywana jako argument ostatni |
_execlp, _spawnlp |
Tak |
Lista |
Odziedziczone proces wywoływania |
_execlpe, _spawnlpe |
Tak |
Lista |
Wskaźnik do tabeli środowiska dla nowego procesu jest przekazywana jako argument ostatni |
_execv, _spawnv |
Nr |
Tablica |
Odziedziczone proces wywoływania |
_execve, _spawnve |
Nr |
Tablica |
Wskaźnik do tabeli środowiska dla nowego procesu jest przekazywana jako argument ostatni |
_execvp, _spawnvp |
Tak |
Tablica |
Odziedziczone proces wywoływania |
_execvpe, _spawnvpe |
Tak |
Tablica |
Wskaźnik do tabeli środowiska dla nowego procesu jest przekazywana jako argument ostatni |