partitionist
Erfahrenes Mitglied
Hallo Leute ich habe eine Shell erstellt bei der man Befehle eingeben kann, diese sieht wie folgt aus:
Jetzt möchte gerne eine eigene batch erstellen wie *.bat oder *.cmd.
Meine shell mit der Dateiendung z.B.: *.abc soll in der Registry registriert werden, damit Windos die Befehle im Skript an meine Shell zuweisen kann.
Ein Beispiel Skript test.abc in der steht:
das sind zwei Zeilen Code die an die Shell übergeben werden müssen. Ich dachte mir wenn ich denn Inhalt an die Shell übergebe und dann mit args[] verarbeite so als wären es normale Eingaben.
Ich brauche Hilfe bei der Registrierung von Dateitypen hier z.B. *.abc und des zugehörigen Programms und wie bekomme ich denn Inhalt ausgelesen damit ich jede zeile an meine Shell übergeben kann?
Wie wird das bei *.cmd gemacht, die Funtion ist ja ähnlich oder?
Code:
int main(int argc, char* argv[])
{
string str;
do
{
//Befehl mit Parameter einlesen
getline(cin, str);
istringstream cmdline (str);
string input;
vector<string> params;
if(cmdline >> input)
{
//...
Jetzt möchte gerne eine eigene batch erstellen wie *.bat oder *.cmd.
Meine shell mit der Dateiendung z.B.: *.abc soll in der Registry registriert werden, damit Windos die Befehle im Skript an meine Shell zuweisen kann.
Ein Beispiel Skript test.abc in der steht:
Code:
exec defrag c:
shutdown
das sind zwei Zeilen Code die an die Shell übergeben werden müssen. Ich dachte mir wenn ich denn Inhalt an die Shell übergebe und dann mit args[] verarbeite so als wären es normale Eingaben.
Ich brauche Hilfe bei der Registrierung von Dateitypen hier z.B. *.abc und des zugehörigen Programms und wie bekomme ich denn Inhalt ausgelesen damit ich jede zeile an meine Shell übergeben kann?
Wie wird das bei *.cmd gemacht, die Funtion ist ja ähnlich oder?