 |
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
zombiezunge Mini JLI'ler
Anmeldedatum: 28.04.2003 Beiträge: 3
Medaillen: Keine
|
Verfasst am: 28.04.2003, 15:28 Titel: kap. 11, erstes windows-programm |
|
|
hallo,
hab da ein kleines problem und ich hoffe ihr könnt mir weiterhelfen.
beim kompilieren des miniprogramms auf seite 210
*****************************************
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
return 0;
}
*****************************************
erhalte ich folgende fehlermeldung:
error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'WinMain'
fatal error C1004: Unerwartetes Dateiende gefunden
Fehler beim Ausführen von cl.exe.
ich denke es ist nur eine kleinigkeit, kann es aber einfach nicht rausfinden.
danke und viele grüße
ZZ |
|
Nach oben |
|
 |
Christian Rousselle Site Admin

Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 28.04.2003, 15:34 Titel: |
|
|
Hallo,
hast du die .dsw gestartet oder die .cpp? ist es ein Windows oder Konsolenprojekt?
Christian |
|
Nach oben |
|
 |
zombiezunge Mini JLI'ler
Anmeldedatum: 28.04.2003 Beiträge: 3
Medaillen: Keine
|
Verfasst am: 28.04.2003, 16:14 Titel: |
|
|
wow, das ging ja schnell. und auch noch vom chef persönlich
also: ich habe ein neues projekt gestartet (win32-anwendung), dann habe ich eine neue datei (quellcode) erstellt und diese hellowindows.cpp genannt. nach der eingabe habe ich eigentlich nur noch die buttons "kompilieren" bzw. "erstellen" auf der minileiste gedrückt. |
|
Nach oben |
|
 |
AFE-GmdG JLI MVP


Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 28.04.2003, 16:17 Titel: |
|
|
Es fehlt ganz einfach ein Code: |
#include <Windows.h>
|
Denn WINAPI ist wie einige andere Symbole dort definiert.
AFE-GmdG _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
 |
zombiezunge Mini JLI'ler
Anmeldedatum: 28.04.2003 Beiträge: 3
Medaillen: Keine
|
Verfasst am: 28.04.2003, 16:49 Titel: |
|
|
ja das war dann auch schon das problem. danke leute!  |
|
Nach oben |
|
 |
mfc++ JLI'ler
Alter: 40 Anmeldedatum: 18.02.2004 Beiträge: 163 Wohnort: Bettlä Medaillen: Keine
|
Verfasst am: 15.07.2004, 17:21 Titel: |
|
|
sorry wenn ich mich einmische, aber wie mach ich denn nun ein fenster?
Code: | #include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
return 0;
}
|
ist ja so wie
Code: | #include <iostream.h>
int main()
{
return 0;
}
|
nur eben als api code. wie mache ich nun ein fenster? hab nirgend was passendes gefunden. bin eher ein mfc c++ progger. möchte aber in die api einsteigen und endlich selber richtige proggs machen. für spiele muss ich das ja auch können  |
|
Nach oben |
|
 |
HotAcid Super JLI'ler

Alter: 43 Anmeldedatum: 04.08.2002 Beiträge: 372 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 15.07.2004, 17:23 Titel: |
|
|
lies doch einfach weiter im Buch steht da alles drinne...
cu Felix _________________ StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht. |
|
Nach oben |
|
 |
mfc++ JLI'ler
Alter: 40 Anmeldedatum: 18.02.2004 Beiträge: 163 Wohnort: Bettlä Medaillen: Keine
|
Verfasst am: 16.07.2004, 10:46 Titel: |
|
|
mach ich doch aber komm nit weiter. muss ich nach dem include
Code: | typedef struct _WNDCLASSEX {
UINT cbSize;
.
.
.
HICON hIconSm;
}
|
schreiben und dann in den WINAPI funktionsrumpf
Code: | HWND CreateWindowEx(
DWORD dwExStyle,
.
.
.
LPVOID lpParam); |
schreiben? |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 16.07.2004, 12:26 Titel: |
|
|
Ja, das CreateWindowEx muss auf jeden Fall irgendwo (direkt oder indirekt) in der WinMain()-Funktion aufgerufen werden.
Aber wenn ich mich recht erinnere, musst du da keine Stuktur definieren. Die WNDCLASSEX-Struct stellt AFAIK windows.h zur Verfügung. Deshalb musst du nur eine Instanz der Klasse erstellen und initialisieren:
Code: | WNDCLASSEX instanz;
instanz.blabla=foo.bar(); |
_________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
criss JLI'ler

Anmeldedatum: 15.02.2004 Beiträge: 169 Wohnort: Graz Umgebung Medaillen: Keine
|
Verfasst am: 11.08.2004, 12:18 Titel: |
|
|
Ich hab da auch mal ein Problem leider hab ich mein Buch verlegt und schreib jetzt die Winmain aus dem Gedächtnis. Ich hab da einen Fehler in der CLASSEX aber ich weiß nicht was.
Code: |
#include <windows.h>
HWND CreateMainWindow(HINSTANCE hInstance);
HWND hwnd = 0;
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
hwnd = CreateMainWindow(hInstance);
if(hwnd = 0)
{
return -1;
}
return 0;
}
HWND CreateMainWindow(HINSTANCE hInstance)
{
WNDCLASSEX wndClass =
{
sizeof (WNDCLASSEX),
CS DBCLKS | CS OWNDC | CS HREDRAW | CS VREDRAW,
0,
0,
0,
hInstance,
0,
LoadCursor(NULL, IDC_CROSS),
(HBRUSH)GetStockObject(WHITE BRUSH),
NULL,
"WindowClass",
0,
};
RegisterClassEx(&wndClass);
return CreateWindowEx ( 0,
"windowClass",
"AnimEdit",
WS OVERLAPPEDWINDOW | WS VISEBLE,
100,100,
100,200,
0,
0,
hInstance,
0);
}
|
Kompiler:
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(38) : error C2065: 'CS' : nichtdeklarierter Bezeichner
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(38) : error C2061: Syntaxfehler : Bezeichner 'DBCLKS'
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(51) : error C2065: 'wndClass' : nichtdeklarierter Bezeichner
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(51) : error C2501: 'RegisterClassExA' : Fehlende Speicherklasse oder Typbezeichner
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(51) : error C2373: 'RegisterClassExA' : Neudefinition; unterschiedliche Modifizierer
p:\microsoft visual studio\vc98\include\winuser.h(2956) : Siehe Deklaration von 'RegisterClassExA'
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(51) : error C2440: 'initializing' : 'int *' kann nicht in 'int' konvertiert werden
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(53) : error C2143: Syntaxfehler : Fehlendes ';' vor 'return'
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(63) : error C2143: Syntaxfehler : Fehlendes ';' vor '}'
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(63) : error C2143: Syntaxfehler : Fehlendes ';' vor '}'
P:\VC++Ent\MSDev98\MyProjects\AnimationsEditor\main.cpp(63) : error C2143: Syntaxfehler : Fehlendes ';' vor '}'
Fehler beim Ausführen von cl.exe.
AnimationsEditor.exe - 10 Fehler, 0 Warnung(en)
leider ein bischen viel :oops: _________________ Lebe dein Leben, du kommst nicht lebend wieder rauß.  |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 11.08.2004, 12:29 Titel: |
|
|
Zitat: | CS DBCLKS | CS OWNDC | CS HREDRAW | CS VREDRAW |
Das kann schon mal nicht sein, weil ein Bezeichner nie ein Leerzeichen haben darf.
Deshalb dürfte CS_blabla stimmen.
Somit sollten auch schon mehrere Fehler weg sein  _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
criss JLI'ler

Anmeldedatum: 15.02.2004 Beiträge: 169 Wohnort: Graz Umgebung Medaillen: Keine
|
Verfasst am: 11.08.2004, 13:13 Titel: |
|
|
Komisch das man selber solche Sachen nicht sieht bis sie einem gesagt werden.
Danke, ein bischen peinlich ist mir das schon  _________________ Lebe dein Leben, du kommst nicht lebend wieder rauß.  |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 11.08.2004, 13:31 Titel: |
|
|
np
Solche Probleme sind sicher schon vielen von uns passiert.
Ich habe auch schon lange nach Fehlern gesucht. Am Ende habe ich dann herausgefunden, dass nur ein Zeichen gefehlt hat/falsch war *g* _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
criss JLI'ler

Anmeldedatum: 15.02.2004 Beiträge: 169 Wohnort: Graz Umgebung Medaillen: Keine
|
Verfasst am: 11.08.2004, 15:13 Titel: |
|
|
Aber den gleichen Fehler mach ich nicht mehr (hoffe ich )
Die Callback ist jetzt auch drin. ohne fehler
Hier noch ein bischen spam:
mir fällt dann doch nichts ein. _________________ Lebe dein Leben, du kommst nicht lebend wieder rauß.  |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|