Noch eine Frage zum "system"-Befehl
-
folgendes Problem:
Ich möchte eine andere Anwendung mit unterschiedlichen Parametern starten, die der User in meiner Anwendung heraus einstellt.(über Checkboxen und so)
Nun kann ich aber die Variable von "system" nicht ändern, da sie ja -const- ist.
Was kann man da machen?
MFG
FatalError
-
Hallo,
also erst einmal solltest du überhaupt nicht daran denken, mit "system" zu arbeiten. Für den Aufruf eines "externen" Programms stellt dein Betriebssystem mit Sicherheit bessere Möglichkeiten zur Verfügung. Und zweitens: wenn ein Parameter als const deklariert ist, heißt das nur, daß die Funktion garantiert, den übergebenen Parameter nicht zu ändern, mehr nicht. Was du übergibst, ist der Funktion ziemlich egal, solange es den Compiler nicht stört (d.h, der Typ grundsätzlich stimmt).
MfG
-
Was für einen Befehl sollte ich deiner Meinugn nach verwenden?
Bisher habe ich nur mit system gearbeitet.
-
FatalError schrieb:
Was für einen Befehl sollte ich deiner Meinugn nach verwenden?
Kommt auf dein BS an. Unter Windows z.B. CreateProcess. Welches BS verwendest du?
-
WinXP
Der CreateProcess Befehl is aber echt vielseitig, kann das sein?
Ich blick bei den Beschreibungen in der Hilfe net durch.
-
Benutz einfach WinExec. Der erste Parameter ist die commandline, der zweite fast immer SW_SHOW . Zum Beispiel:
WinExec("C:\\myprog.exe",SW_SHOW);oder:
WinExec("C:\\myprog.exe -a text.txt",SW_SHOW);Was du als erste Parameter übergibst kannst du säter genauso mit char*GetCommandline() in dem aufgerufenen Program wieder bekommen.
-
Nun habe ich aber immernoch das Problem, dass ich folgende Fehlermeldungen bekomme:
1. **"error C2440: '=' : 'char [14]' kann nicht in 'char' konvertiert werden"
**
2. *"error C2664: 'WinExec' : Konvertierung des Parameters 1 von 'char' in 'const char ' nicht moeglich"Folgendes habe ich jetzt:
parameter = "Paintball.exe" && parameter; // Fehler 1 WinExec(parameter, SW_SHOW); // Fehler 2parameter ist eine Membervariable vom Typ char.
Was mache ich verkehrt?
-
Sorry, aber genug, um dir eher zu einem Grundlagentutorial (oder besser -buch) als zur WinAPI zu raten

-
Dein Name is wohl Programm @ FatalError, LOL
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Du solltest dir mal die String-Funktionen anschauen - z.B. lstrcat

-
Er sollte sich eher mal ein Grundlagentutorial C/C++ ansehen...
parameter = "Paintball.exe" && parameter;Auaauaaua...
