Freigeben über


Prozess- und Umgebungssteuerung

Verwenden Sie die Routinen Prozesslenkung, um Prozesse aus ein Programm starten, zu beenden und zu verwalten. Verwenden Sie die UmgebungSteuerelementroutinen, um zu und Änderungsinformationen über der Betriebssystemumgebung.

Prozess- Umgebungs-Kontrollfunktionen

Routine

Verwendung

.NET Framework-Entsprechung

Abbruch

Abbruchsprozess, ohne Puffer oder aufrufende Funktionen zu leeren, registrierte durch atexit und _onexit

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

assert

Test für logischen Fehler

System::Diagnostics::Debug::Assert

Makros _ASSERT, _ASSERTE

Wie auch assert, jedoch nur verfügbar in den Debugversionen der Laufzeitbibliotheken

System::Diagnostics::Debug::Assert

atexit

Zeitplanroutinen für Ausführung an der dass

System::Diagnostics::Process::Exited

_beginthread-Funktion, _beginthreadex

Erstellen Sie einen neuen Thread auf ein Windows-Betriebssystemprozess

System::Threading::Thread::Start

_cexit

Führen Sie exit Beendigungsprozeduren (z Leeren von Puffern) aus, und geben Sie Kontrolle an das aufrufende Programm zurückgegeben, ohne Prozess zu beenden

System::Diagnostics::Process::CloseMainWindow

_c_exit

Führen Sie _exit Beendigungsprozeduren aus, und geben Sie Kontrolle an das aufrufende Programm zurückgegeben, ohne Prozess zu beenden

System::Diagnostics::Process::CloseMainWindow

_cwait

Warten Sie, bis ein anderer Prozess beendet wird

System::Diagnostics::Process::WaitForExit

_endthread-Funktion, _endthreadex

Beenden eines Windows-Betriebssystemthread

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

_execl, _wexecl

Führen Sie neuen Prozess mit Argumentliste aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execle, _wexecle

Führen Sie neuen Prozess mit Argumentliste und bestimmter Umgebungen aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execlp, _wexeclp

Führen Sie neuen Prozess mit PATH und -Argumentliste Variable aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execlpe, _wexeclpe

Führen Sie neuen Prozess mit PATH-Variable aus, Umgebung und Argumentliste angegeben

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execv, _wexecv

Führen Sie neuen Prozess mit Argumentarray aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execve, _wexecve

Führen Sie neuen Prozess mit Argumentarray und bestimmter Umgebungen aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execvp, _wexecvp

Führen Sie neuen Prozess mit PATH und -Argumentarrays Variable aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_execvpe, _wexecvpe

Führen Sie neuen Prozess mit PATH-Variable aus, Umgebung und Argumentarray angegeben

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

exit

Rufen Sie Funktionen registriert durch atexit und _onexit auf, leeren Sie alle Puffer, schließen Sie alle geöffneten Dateien, und beenden Sie Prozess

System::Diagnostics::Process::Kill

_exit

Beenden Sie Prozess sofort, ohne atexit oder _onexit aufrufen oder Puffer zu leeren

System::Diagnostics::Process::Kill

getenv, _wgetenv, getenv_s, _wgetenv_s

Rufen Sie Wert der Umgebungsvariablen von ab

System::Environment::GetEnvironmentVariable

_getpid

Rufen Sie Prozess-ID-Nummer ab

System::Diagnostics::Process::Id

longjmp

Erstellen Sie gespeicherte Stapelumgebung wiederherstellen; verwenden Sie sie, um nicht lokalen goto auszuführen

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

_onexit

Zeitplanroutinen für Ausführung an der dass; Verwendung für Kompatibilität mit Version 7.0 Microsoft C/C++ und früher

System::Diagnostics::Process::Exited

_pclose

Warten Sie neuen Befehlsprozessor und schließen Sie Stream für zugehörige Pipe

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

perror, _wperror

Drucksfehlermeldung

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

_pipe

Erstellen Sie Pipe zum Lesen und Schreiben erstellt

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

_popen, _wpopen

Erstellen Sie Pipe und führen Sie folgenden Befehl aus

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

_putenv, _wputenv, _putenv_s, _wputenv_s

Hinzufügen oder Ändern Sie Wert der Umgebungsvariablen

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

raise

Senden von Signal für den aufrufenden Prozesses

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

setjmp

Speichern Sie Stapelumgebung; Verwendung, nicht lokalen goto auszuführen

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

Signal

Handle-Unterbrechungssignal

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

_spawnl, _wspawnl

Erstellen und Ausführen neuen Prozess mit angegebener Argumentliste aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnle, _wspawnle

Erstellen und Ausführen neuen Prozess mit angegebener Argumentliste und Umgebungen aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnlp, _wspawnlp

Erstellen und Ausführen neuen Prozess mit PATH und der angegebenen Variable Argumentliste aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnlpe, _wspawnlpe

Erstellen und Ausführen neuen Prozess mit PATH-Variable, der angegebenen Umgebung und der Argumentliste aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnv, _wspawnv

Erstellen und Ausführen neuen Prozess mit angegebenem Argumentarray aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnve, _wspawnve

Erstellen und Ausführen neuen Prozess mit angegebener Umgebung und Argumentarray aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnvp, _wspawnvp

Erstellen und Ausführen neuen Prozess mit PATH angegebenen Variable und des Argumentarrays aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

_spawnvpe, _wspawnvpe

Erstellen und Ausführen neuen Prozess mit PATH-Variable, der angegebenen Umgebung und des Argumentarrays aus

System::Diagnostics::Process-Klasse, System::Diagnostics::ProcessStartInfo-Klasse

System, _wsystem

Führen Sie Betriebssystembefehl aus

System::Diagnostics::ProcessStartInfo-Klasse, System::Diagnostics::Process-Klasse

Im Windows-Betriebssystem ist der generierte Prozess z erzeugenden Prozess entsprechend. Jeder Prozess kann die _cwait verwenden, um auf einen anderen Prozess zu warten, für den die Prozess-ID bezeichnet.

Der Unterschied zwischen _exec und den _spawn Familien ist, dass eine _spawn-Funktion Steuerelement vom neuen Prozess zum aufrufenden Prozesses zurückgeben kann. In einer _spawn-Funktion sind der aufrufende Prozess und der neue Prozess im Arbeitsspeicher vorhanden, es sei denn, _P_OVERLAY angegeben wird. In einer _exec-Funktion der neue Prozess der aufrufende Prozess, sodass Steuerelement nicht dem aufrufenden Prozesses zurückkehren, es sei denn, dass ein Fehler im Test, Ausführung des neuen Vorgangs zu starten auftritt.

Die Unterschiede zwischen den Funktionen der _exec Familie sowie unter denen in der _spawn - Familie, beziehen die Methode Lokalisierens der als mit ein neue Prozess, der das Formular, in der Argumente den neuen Prozess übergeben werden, und die Methode des Festlegens ausgeführt werden Datei, der Umgebung, wie in der folgenden Tabelle. Verwenden Sie eine Funktion, der eine Argumentliste werden, wenn die Anzahl von Argumenten konstant ist oder zur Kompilierungszeit bekannt. Verwenden Sie eine Funktion, die einen Zeiger auf ein Array übergibt, das die Argumente enthält, wenn die Anzahl der Argumente zur Laufzeit bestimmt werden soll. Die Informationen in der folgenden Tabelle gelten auch für die Breitzeichenentsprechungen der Funktionen _spawn und _exec zu.

_spawn und _exec Funktions-Familien

Funktionen

Verwendung PFADvariable, um die Datei zu suchen

Argumentübergabekonvention

Umgebungseinstellungen

_execl, _spawnl

nein

List

Diese vom aufrufenden Prozesses

_execle, _spawnle

nein

List

Zeiger auf Umgebungstabelle für neuen Prozess wurde als zuletzt Argument

_execlp, _spawnlp

ja

List

Diese vom aufrufenden Prozesses

_execlpe, _spawnlpe

ja

List

Zeiger auf Umgebungstabelle für neuen Prozess wurde als zuletzt Argument

_execv, _spawnv

nein

Array

Diese vom aufrufenden Prozesses

_execve, _spawnve

nein

Array

Zeiger auf Umgebungstabelle für neuen Prozess wurde als zuletzt Argument

_execvp, _spawnvp

ja

Array

Diese vom aufrufenden Prozesses

_execvpe, _spawnvpe

ja

Array

Zeiger auf Umgebungstabelle für neuen Prozess wurde als zuletzt Argument

Siehe auch

Referenz

Laufzeitroutinen nach Kategorie