Supportnet / Forum / Anwendungen(Java,C++...)
C++ Programmaufruf
Frage
Ich bin relativ neu bei C++ und möchte durch mein Programm andere aufrufen.
Ich komme aber absolut nicht klar mit dem Befehl CreateProcess(). Darum wollte ich hier mal fragen ob mir jemand verständlich erklären kann, was es mit den ganzen Parametern auf sich hat?
Thx
Antwort 1 von Lau
Hi Thx!
Ich habe ein ähnliches Problem, aber
irgendwie hilft uns keiner.
Schade!
Laura
Ich habe ein ähnliches Problem, aber
irgendwie hilft uns keiner.
Schade!
Laura
Antwort 2 von Markus K.
hi,
versuchs mal hiermit:
if(WinExec((LPSTR)"Pfad und Dateiname",SW_SHOWNORMAL)<32)
{
Fehler anzeigen
}
Ist zwar eher eine alte C Funktion aber für den Aufruf eines Programms, wenn keine weitern Optionen benötigt werden,
das einfachste.
Gruß Markus
versuchs mal hiermit:
if(WinExec((LPSTR)"Pfad und Dateiname",SW_SHOWNORMAL)<32)
{
Fehler anzeigen
}
Ist zwar eher eine alte C Funktion aber für den Aufruf eines Programms, wenn keine weitern Optionen benötigt werden,
das einfachste.
Gruß Markus
Antwort 3 von Lau
Hi Markus!
Habe noch nie etwas von dieser Funktion gehört. Ist die wirklich
aus C? Und in welcher Header-Datei finde ich sie?
Laura
Habe noch nie etwas von dieser Funktion gehört. Ist die wirklich
aus C? Und in welcher Header-Datei finde ich sie?
Laura
Antwort 4 von semi
Es ist ein Windows API Funktion.
Siehe winbase.h bzw. windows.h, wo winbase.h "included" wird.
Die SW_* Konstanten findest Du in winuser.h
Auszug aus WinAPI Dokumentation
Siehe winbase.h bzw. windows.h, wo winbase.h "included" wird.
Die SW_* Konstanten findest Du in winuser.h
Auszug aus WinAPI Dokumentation
UINT WinExec(lpszCmdLine, fuCmdShow)
LPCSTR lpszCmdLine; /* address of command line */
UINT fuCmdShow; /* window state of new app. */
Antwort 5 von Lau
Gracias!
Es funktioniert! :-)
Du weist nicht zufällig auch, wie man ein reines DOS-Programm, also
ein Prog, welches im DOS-Modus laufen kann, auch Prog aufrufen kann?
Die Funkt, die Du genannt hast, ist wohl logischerweise für die Win-Konsole gedacht.
Toll wäre es, wenn Du mir auch sagen kannst, wie das von DOS her
geht.
Auf alle Fälle schon einmal vielen Dank!
Laura
Es funktioniert! :-)
Du weist nicht zufällig auch, wie man ein reines DOS-Programm, also
ein Prog, welches im DOS-Modus laufen kann, auch Prog aufrufen kann?
Die Funkt, die Du genannt hast, ist wohl logischerweise für die Win-Konsole gedacht.
Toll wäre es, wenn Du mir auch sagen kannst, wie das von DOS her
geht.
Auf alle Fälle schon einmal vielen Dank!
Laura
Antwort 6 von semi
Vermutlich mit
Beispiel (nicht getestet):
Gruß,
Michael
int execl(const char *path, const char *argv0, ...);
oder ähnlichen Funktionen aus process.hBeispiel (nicht getestet):
#include <process.h>
int main(int argc, char **argv) {
char *path = "c:\\wo\\auch\\immer\\";
char *cmd = "kill_fat.exe";
char *arg1 = "-sofort";
char *arg2 = "-gruendlich";
execl(path, cmd, arg1, arg2);
return 0;
}
Gruß,
Michael
Antwort 7 von Lau
Danke für die Antwort!
Nur, ich komme leider nicht weiter.
Mein Compiler sagt mir immer, dass argc und argv
nicht verwendet wurden.
Wo erfahre ich Näheres über diese Funktionen
in process.h?
Laura
Nur, ich komme leider nicht weiter.
Mein Compiler sagt mir immer, dass argc und argv
nicht verwendet wurden.
Wo erfahre ich Näheres über diese Funktionen
in process.h?
Laura