RunApplication
Startet ein Programm und wartet auf dessen Rückgabewert.
Archivierter Inhalt: Dieser Quelltext ist derzeit inaktiv und möglicherweise veraltet, nicht mehr gewartet oder funktioniert nicht mehr.
Ein Prozess ist schnell gestartet. Aber dann auch noch auf dessen Beendigung zu warten und den Rückgabewert auszulesen erfordert im Windows-API schon ein paar weitere Zeilen. Die sind in der RunApplication-Funktion dargestellt.
Hinweis zur Codequalität: Der Inhalt auf dieser Seite ist möglicherweise etwas angestaubt. Ich nutze C++ seit längerer Zeit nicht mehr, möchte aber die vorhandenen und früher einmal nützlichen Funktionen weiterhin anbieten.
Download
RunApplication.cpp850 BQuelltext der RunApplication-Funktion
Inhalt der Datei RunApplication.cpp:
//
// Dependencies: CString
// Status: unchecked
//
// Web: http://unclassified.software/source/runapplication
//
int RunApplication(CString strPath, CString strArgs)
{
BOOL rc;
STARTUPINFO si;
PROCESS_INFORMATION pi;
CString strCmdLine;
strCmdLine.Format("%s %s", strPath, strArgs);
// TODO: why don't we use CreateProcess' 1st parameter?
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(si);
ZeroMemory(&pi, sizeof(pi));
rc = CreateProcess(NULL,
strCmdLine.GetBuffer(strCmdLine.GetLength() + 1),
NULL,
NULL,
FALSE,
0,
NULL,
NULL,
&si,
&pi);
if (rc)
{
WaitForSingleObject(pi.hProcess, INFINITE); // Wait until child process exits.
CloseHandle(pi.hProcess); // Close process and thread handles.
CloseHandle(pi.hThread);
}
return rc;
}
Lizenz und Nutzungsbedingungen
Diese Software ist als kompilierte Version und im Quelltext frei und uneingeschränkt verfügbar („Public Domain“). Ich gebe keine Garantie, auch nicht auf Lauffähigkeit oder Benutzbarkeit. Die Nutzung erfolgt auf eigene Gefahr, ich hafte nicht für Schäden, die durch sachgemäßen oder unsachgemäßen Gebrauch dieses Programms entstehen.
Statistische Daten
- Erstellt am 2007-04-02.