myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

HILFE!! BEKOMME C++ Code nicht in .exe

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 12.04.12, 15:14   #1
Phinitris
Erfahrener Newbie
 
Registriert seit: Mar 2010
Beiträge: 151
Bedankt: 57
Phinitris ist noch neu hier! | 0 Respekt Punkte
Standard HILFE!! BEKOMME C++ Code nicht in .exe

Hallo,
ich habe folgenden Code aus'm Internet:



nur irgendwie kriege ich den mit Dev-C++ 4.9.9.2 nicht kompiliert.
Kriegt ihr das mit nem anderen Programm hin?
Der Code ist richtig. Also es gibt keine Fehler.
__________________
Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Phinitris ist offline   Mit Zitat antworten
Ungelesen 12.04.12, 16:17   #2
smdata2
Anfänger
 
Registriert seit: Apr 2009
Beiträge: 24
Bedankt: 5
smdata2 ist noch neu hier! | 0 Respekt Punkte
Standard

Bitte ein bisschen präziser ... wenn du es nicht kompiliert bekommst, wird wohl ein Fehler oder irgendwas kommen ... Was passiert denn wenn du in Dev-C++ das Programm kompilierst?

Data
smdata2 ist offline   Mit Zitat antworten
Ungelesen 12.04.12, 16:43   #3
Phinitris
Erfahrener Newbie
 
Registriert seit: Mar 2010
Beiträge: 151
Bedankt: 57
Phinitris ist noch neu hier! | 0 Respekt Punkte
Standard

Hier das Bild mit den Fehlern.

[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
__________________
Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Phinitris ist offline   Mit Zitat antworten
Ungelesen 12.04.12, 17:17   #4
ProgMaster
Banned
 
Registriert seit: Mar 2012
Beiträge: 337
Bedankt: 93
ProgMaster ist noch neu hier! | 0 Respekt Punkte
Standard

Englisch kannst Du? Die Fehlermeldungen kannst Du lesen?
Wie kommst Du darauf, dass der Code richtig ist?
ProgMaster ist offline   Mit Zitat antworten
Ungelesen 12.04.12, 17:43   #5
Phinitris
Erfahrener Newbie
 
Registriert seit: Mar 2010
Beiträge: 151
Bedankt: 57
Phinitris ist noch neu hier! | 0 Respekt Punkte
Standard

Weil ich ihn aus einem Forum habe. Und da ist der auch richtig!! Die haben den Quellcode aber mit dem Borland 5 Prog zur exe gemacht. Also müsste ich den Compiler haben, aber das Problem ist dass der nur unter 32bit läuft ich hab Win7 64bit. Und der läuft auch nur unter 95,98 und NT. Über Kompilitätsmodus gehts net. Also brauch ich nen PC mit 95,97 oder NT. Aber Virtuell will ich net machen da damit der PC vollgemüllt wird. Also brauch ich einen Geeigneten Kompiler. Oder kann man den S***** umformen? Und ja Englisch kann ich

Sop
hab fast alle Probleme gelöst.

Hier der neue Code
Zitat:
#include <stdio.h>
#include <conio.h>
#include <string.h>

using namespace std;

int main
{
const char *pers_nr = "666"; //Zugangsnr (MAXIMAL 8 ZEICHEN)
const char *code = "drin"; //Zugangscode (MAXIMAL 8 ZEICHEN)

char *ab_pers; //Abgefragte Zugangsnr
char *ab_code; //Abgefragter Zuganscode

int i = 0; //Schleifendurchläufe
int codeguard; //Rückgabewert des Stringvergleiches

for(i=0;i<3
{
printf(" ENTRY TO PENTAGON\n");
printf(" ~~~~~~~~~~~~~~~~~\n");

ab_pers = getpass(" IDNR: ");
printf(" \n");

codeguard = strcmp(pers_nr, ab_pers);

if((codeguard > 0) || (codeguard < 0))
{
i++;
gotoxy(45, 30);
printf("!! WRONG IDNR !!\n");
gotoxy(45, 31);
printf("!! ACCESS DENIED !!\n ");

if(i == 3)
{
gotoxy(45, 33);
printf("!! SYSTEM ABBORTED !!\n\a ");
getch();
continue;
}
else
{
getch();
clrscr();
continue;
}
}//if

ab_code = getpass(" PASSWORD: ");
printf(" \n");

codeguard = strcmp(code, ab_code);

if((codeguard > 0) || (codeguard < 0))
{
i++;
gotoxy(45, 30);
printf("!! WRONG PASS !!\n");
gotoxy(45, 31);
printf("!! ACCESS DENIED !!\n ");

if(i == 3)
{
gotoxy(45, 33);
printf("!! SYSTEM ABBORTED !!\n\a ");
getch();
continue;
}
else
{
getch();
clrscr();
continue;
}
}//if
gotoxy(45, 30);
printf("!! ACCESS GRANTED !!\n\a ");
i = 3;
getch();

}//for
cin.synch
cin.get
return 0()
}//main
Habe ganz oben was geändert. Mit using namespace std und int main.
Das einzige Problem:

Zeile 8:
invalid function declaration
__________________
Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Phinitris ist offline   Mit Zitat antworten
Ungelesen 12.04.12, 18:38   #6
Deraazuul
Anfänger
 
Registriert seit: Mar 2010
Beiträge: 13
Bedankt: 2
Deraazuul ist noch neu hier! | 0 Respekt Punkte
Standard

Der Code ist falsch, es muss "int main(){" sein und nicht "int main{" , plus änder das "return 0()" in "return 0;" . Des weiteren sind "gotoxy(int,int)" und "getpass(...)" kein Standard sonder Compiler spezifisch, die Gesamte "conio.h" ist kein Standard.
Deraazuul ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 07:01   #7
slahn
Erfahrenes Mitglied
 
Benutzerbild von slahn
 
Registriert seit: Oct 2009
Beiträge: 639
Bedankt: 228
slahn ist noch neu hier! | 0 Respekt Punkte
Standard

Ich hab hier mal aus purer Langeweile heraus und wegen dem Spaß am programmieren, eine "ähnliche" Implementierung in C++ verfasst. Der Einfachheit halber, habe ich selbst keine Klassen angelegt. Es werden reine STD-C++ Funktionen verwendet und keine System abhängigen Libs.

Mein Versuch:
__________________
"[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]" (Klopfers Vater)
slahn ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 10:08   #8
Phinitris
Erfahrener Newbie
 
Registriert seit: Mar 2010
Beiträge: 151
Bedankt: 57
Phinitris ist noch neu hier! | 0 Respekt Punkte
Standard

Sorry,
bin noch Neuling in dem Gebiet
Also macht die Main.cpp den Hauptteil und die .h sind die funktionen die die main.cpp dafür benötigt?
Wie kompilier ich das denn? Ich habe alle Dateien per Dev-C++ auf'm Desktop abgespeichert. Aber wenn ich jetzt auf die Main gehe und f9 zum kompilieren drücke dann steht da.
[Linker Error] undefined reference to login(int)
Id returned 1 exit status.

Wo ist denn der Fehler oder liegst an meinem Kompiler?
Hab das ganze jetzt als Projekt gemacht. Da kommen aber noch mehr Fehler.
__________________
Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Phinitris ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 10:57   #9
slahn
Erfahrenes Mitglied
 
Benutzerbild von slahn
 
Registriert seit: Oct 2009
Beiträge: 639
Bedankt: 228
slahn ist noch neu hier! | 0 Respekt Punkte
Standard

Also, login.cpp liefert alle Funktionen für den Login (also "bool login(int versuche);") in der Header-Datei stehen die Deklarationen (Also Namen der Funktionen), damit man ein anderes Programm mit login.cpp bekannt machen kann (login.h ist so eine art Betriebsanleitung).
main.cpp ist von mir nur ein Beispielprogramm. Es kann aber durch jedes andere beliebige selbstgeschrieben Programm ersetzt werden (wichtig ist, dass in dem Programm #include "login.h" steht, damit es eben weiß, wo die Funktionen zu finden sind).

Damit du das ganze Kompilieren und Linken kannst, musst du (ich mach es jetzt mal ganz simpel) ein Projekt erstellen und alle drei Dateien einfügen. Danach solltest du es kompilieren können.
__________________
"[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]" (Klopfers Vater)
slahn ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 11:31   #10
Phinitris
Erfahrener Newbie
 
Registriert seit: Mar 2010
Beiträge: 151
Bedankt: 57
Phinitris ist noch neu hier! | 0 Respekt Punkte
Standard

Geilo geht. Kann man das auch noch so machen, dass nach 3 mal Falsch der PC piept? Dieser BIOS Piep ton
__________________
Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Phinitris ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 11:47   #11
slahn
Erfahrenes Mitglied
 
Benutzerbild von slahn
 
Registriert seit: Oct 2009
Beiträge: 639
Bedankt: 228
slahn ist noch neu hier! | 0 Respekt Punkte
Standard

ja, kannst du ...

cout << '\a';

\a ist eine [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] und steht für BELL. Überall wo du das hinschreibst/ausgibst, wird ein Warnton erzeugt. Also einfach in login.cpp fast ganz unten in der letzten else{} "cout << '\a';" hinschreiben. Wenn du es bei jeder Falschen Passworteingabe haben willst, schreib es in die vorletze else{} (zb. nach "...<< "!! WRONG ID-NUMBER OR PASSWORD !!"" << endl; )
__________________
"[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]" (Klopfers Vater)
slahn ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 12:06   #12
Phinitris
Erfahrener Newbie
 
Registriert seit: Mar 2010
Beiträge: 151
Bedankt: 57
Phinitris ist noch neu hier! | 0 Respekt Punkte
Standard

Ah okey,
kann ich das auchso machen das das Piepen mehrmals kommt? also nicht
cout << '\a';
cout << '\a';
cout << '\a';

sondern in abständen alle 3 sek oder so.
Und das das auch mit Ton aus geht?
Also manche Viren ertönen ja auch wenn der Ton aus ist.
Kann man das nicht in eine Schleife machen? Also mit while?
__________________
Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Phinitris ist offline   Mit Zitat antworten
Ungelesen 13.04.12, 12:42   #13
slahn
Erfahrenes Mitglied
 
Benutzerbild von slahn
 
Registriert seit: Oct 2009
Beiträge: 639
Bedankt: 228
slahn ist noch neu hier! | 0 Respekt Punkte
Standard

Sleep() ist unter Windows für das warten eines Prozesses zuständig. Sleep(3000); wartet 3 Sekunden lang, bis der Prozess, nach dem Aufruf von Sleep() wieder fortgesetzt wird.

Wenn ich dich richtig verstehe, willst du das haben ...


Für Sleep musst du noch windows.h einbinden. Aber dann geht der Code nur mehr unter Windows. Sleep() wird in Millisekunden angegeben (Sekunden mal 1000). Ohne Sleep läuft es zwar wieder überal, aber es piept dann etwas schneller und wird dir sehr wahrscheinlich dein OS zu Fall bringen ...

Aber ganz ehrlich, das ist eher eine Pfuschlösung. Möglich wäre noch die boost-libs zu verwenden, dann wäre das Problem mit der Systemabhängigkeit auch gelöst. Aber dazu rate ich dir, dass du dich mal eher Allgemein mit dem Thema C++ beschäftigst, bevor du mit solchen sachen wie threads und boost anfängst.
__________________
"[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]" (Klopfers Vater)
slahn ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr.


Sitemap

().