• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Batch Virus Maker geht nicht

Status
Für weitere Antworten geschlossen.

HTML-Meister

Mitglied
Hallo, Community!

Ich bin noch relativ neu in C++ und habe jetzt mein erstes "aufwändiges" Script gescriptet. Aber es geht nicht! Es sollte eine Funktion erzeugen, die, wenn nicht 0 eingegeben wird, wiederholt wird. Mein Compiler spuckt nix aus, ich kann euch nichts sagen. Ich verwende Dev-C++ 4.9.8.0.

Code:
#include <cstdio>
#include <cstdlib>
#include <iostream>

int main(){

float virus(){
cout<<"1=shutdown -s -t 60"<<endl;
cout<<"2=@echo off"<<endl;
cout<<"3=pause"<<endl;
cout<<"0=Fertig"<<endl;

cout<<"Eingabe: ";
cin>>eing;

if(eing==1){
int virus1="shutdown -s -t 60";
virus();
};else if(eing==2){
int virus2="@echo off";
virus();
};else if(eing==3{
int virus3="pause";
virus();
};else if(eing==0){
   ofstream out("virus.bat");
   out<<virus1<<endl;
   out<<virus2<<endl;
   out<<virus3<<endl;
   cout<<"Feritg!"<<endl;
};else{
cout<<"Bitte gültige Eingabe!"<<endl;
};
};
};

Bitte nicht auslachen! Ich habe gerade erst angefangen!
 
Werbung:
Werbung:
Wieso nennen bloß alle einen Schädling immer ein Virus? Wisst ihr nicht was ein Virus macht, da könnt man ja schon wieder ne Krise kriegen....
Hier für alle Neulinge: Computervirus – Wikipedia

@HTMLMEISTER
Wenn DevCpp nix ausgibt, dann wird doch eine Executable erstellt, wo ist das Problem?
 
OK, jetzt habe ich ein paar Fehler. So schaut das Script nun aus:

Code:
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;

float virus(){
cout<<"1=shutdown -s -t 60"<<endl;
cout<<"2=@echo off"<<endl;
cout<<"3=pause"<<endl;
cout<<"0=Fertig"<<endl;

int eing;
cout<<"Eingabe: ";
cin>>eing;

if(eing==1){
const char* virus1;
virus1 = "shutdown -s -t 60";
virus();
}else if(eing==2){
const char* virus2;
virus2="@echo off";
virus();
}else if(eing==3){
const char* virus3;
virus3="pause";
virus();
}else if(eing==0){
   ofstream out("virus.bat");
   out<<virus1<<endl;
   out<<virus2<<endl;
   out<<virus3<<endl;
   cout<<"Feritg!"<<endl;
}else{
cout<<"Bitte gueltige Eingabe!"<<endl;
system("Pause");
virus();
};
};

int main(){

virus();

};

Bei den out<< Befehlen streicht er es mir rot an. Nimmt der keine Variablen?
Das gibt er aus:

`virus3' undeclared (first use this function)
`virus2' undeclared (first use this function)
`virus1' undeclared (first use this function)

???
 
Es gibt folgendes Problem:
Die Variable Virus1 ist nur im Codeabschnitt
"if (eing==1) {..}" gültig. außerhalb kannst du deshalb nicht
darauf zugreifen. Außerdem ist virus1 eine constante variable,
die du nachher nicht mehr ändern kannst.


Versuch mal das:


#include <iostream>
#include <fstream>
...

using namespace std;

char *virus1;
char *virus2;
char *virus3;

float virus ()
{
...
}

int main()
{
...
}
 
Werbung:
Ja, Fehler behoben, es geht. Nur ist die .bat jetzt leer?! Hab ich da auch was vergessen?

Neues Script

Code:
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;

char *virus1;
char *virus2;
char *virus3;

float virus(){
cout<<"1=shutdown -s -t 60"<<endl;
cout<<"2=@echo off"<<endl;
cout<<"3=pause"<<endl;
cout<<"0=Fertig"<<endl;

int eing;
cout<<"Eingabe: ";
cin>>eing;

if(eing==1){
const char* virus1;
virus1 = "shutdown -s -t 60";
virus();
}else if(eing==2){
const char* virus2;
virus2="@echo off";
virus();
}else if(eing==3){
const char* virus3;
virus3="pause";
virus();
}else if(eing==0){
   ofstream out("virus.bat");
   out<<virus1<<endl;
   out<<virus2<<endl;
   out<<virus3<<endl;
   cout<<"Feritg!"<<endl;
   system("Pause");
}else{
cout<<"Bitte gueltige Eingabe!"<<endl;
system("Pause");
virus();
};
};

int main(){

cout<<"Das ist der Bat Virus Maker 0.3 by rspfans.at! Copyright by rspfans.at"<<endl;
cout<<"Gib die Zahlen ein, die bei den Funktionen stehen,"<<endl;
cout<<"um ein Element in den Virus einzufuegen."<<endl;
cout<<"Dein Virus wird in dem Verzeichnis gespeichert,"<<endl;
cout<<"in dem die Datei Virus_maker.exe liegt."<<endl<<endl;

virus();

};
 
Du musst das const char * in "if (eing==...) " entfernen,
also so:

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;

char *virus1;
char *virus2;
char *virus3;

float virus(){
cout<<"1=shutdown -s -t 60"<<endl;
cout<<"2=@echo off"<<endl;
cout<<"3=pause"<<endl;
cout<<"0=Fertig"<<endl;

int eing;
cout<<"Eingabe: ";
cin>>eing;

if(eing==1){
virus1 = "shutdown -s -t 60";
virus();
}else if(eing==2){
virus2="@echo off";
virus();
}else if(eing==3){
virus3="pause";
virus();
}else if(eing==0){
ofstream out("virus.bat");
out<<virus1<<endl;
out<<virus2<<endl;
out<<virus3<<endl;
cout<<"Feritg!"<<endl;
system("Pause");
}else{
cout<<"Bitte gueltige Eingabe!"<<endl;
system("Pause");
virus();
};
};

int main(){

cout<<"Das ist der Bat Virus Maker 0.3 by rspfans.at! Copyright by rspfans.at"<<endl;
cout<<"Gib die Zahlen ein, die bei den Funktionen stehen,"<<endl;
cout<<"um ein Element in den Virus einzufuegen."<<endl;
cout<<"Dein Virus wird in dem Verzeichnis gespeichert,"<<endl;
cout<<"in dem die Datei Virus_maker.exe liegt."<<endl<<endl;

virus();

};
 
Wieso nennen bloß alle einen Schädling immer ein Virus? Wisst ihr nicht was ein Virus macht, da könnt man ja schon wieder ne Krise kriegen....
Hier für alle Neulinge: Computervirus – Wikipedia

@HTMLMEISTER
Wenn DevCpp nix ausgibt, dann wird doch eine Executable erstellt, wo ist das Problem?

Der Unterschied ist ja wohl verschwindend gering ich war selber bestimmt 1 jahr in der Scene aktiv und hab mich damit befasst.. Trojaner,Viren,DDoser, Botnet tools etc.. hab ich alles noch am PC und was sind es? Richtig: computerviren.. Normale Programme führen normalerweise keine Schadfunktionen aus ;)...
@HTMLMEISTER aber wenn du schon Viren programmierst dann richtig ;-) so batch schmarn brauch keiner mach dir en Bot und mach dir en Botnet draus..
da kannste fürs DDOSEN auch noch geld machen..links darf ich dir glaub ich net nennen?!? schreib mir ne PN oder so wenn du links zu scene boards brauchst..
 
Werbung:
Ein 16 Jähriger der in der Scene drin "war" -.-
Wann? Mit 12? Hast mit den "grossen der Szene" Age of Empires gecrackt oder wie kann man das verstehen?

@Topic: Kann mich meinen Vorrednern anschliessen. 1. Programm gleich ein "Virus"? Dann lass das Programmieren lieber bleiben ...
 
Werbung:
Ich sag dazu nur eins:

Cracker

Es gibt noch eine andere Gruppe, die sich lautstark als Hacker bezeichnet, diesen Namen aber in keinster Weise verdient. Es sind Menschen (meist pubertierende männliche Wesen), welche einen Spaß daran haben, in Computer einzubrechen und das Telefonnetz zu zerstören. Echte Hacker nennen diese Leute "Cracker" und wollen mit ihnen nichts zu tun haben. Wirkliche Hacker halten Cracker für ein faules, unverantwortliches und nicht besonders schlaues Pack, denn genauso wenig wie man durch das Knacken von Sicherheitscodes ein Hacker wird, wird man durch das Kurzschließen eines Autos zu einem KFZ-Mechaniker. Unglücklicherweise sind viele Journalisten und Schreiber darauf verfallen, das Wort Hacker als Beschreibung für Cracker zu verwenden; dies verärgert echte Hacker ungemein ...

Und ihr seit Cracker. Wenn ihr schon nicht "vernünftiges" Programmiert, dann werdet doch zumindest Hacker.

RJ
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben