Vielen Dank für den Denkanstoß
Ich bin wie folgt vorgegangen:
#include <cstdio>
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
string parameter = argv[1];
std::string gesamt="start %windir%\\system32\\shutdown.exe "+parameter;
std::system(gesamt.c_str());
}
Alles anzeigen
Wenn ich das Programm nun mit Parametern starte, wird die shutdown.exe mit nur dem ersten Parameter gestartet.
argc ist für die Anzahl der Parameter, das habe ich herausgefunden.
Aber was mache ich damit?
Ich überlege, eine for schleife zu schreiben, die alle Parameter ausließt und in einen String schreibt... in etwa so:
#include <cstdio>
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
for (int i = 0; i < argc; ++i)
{
std::string parameter = parameter + argv[i];
}
string parameter = parameter;
std::string gesamt="start %windir%\\system32\\shutdown.exe " + parameter;
std::system(gesamt.c_str());
}
Alles anzeigen
Aber das funktioniert nicht... führt immer zum Programmabsturtz... warum? (doch, ich hab das teil mit parametern gestartet!)