Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

17.01.2011, 20:29

beispielprogramm fenster läuft nicht

guten abend
ich habe grade das beispielprogramm für ein fenster mit nachrichtenschleife abgetippt, das ergebnis war aber eher ernüchternd. auch wenn ich das von der cd öffne kriege ich jede menge fehler. ein paar habe ich schon raus, es es sind aber noch einige, mit denen google und ich nichts anzufangen wussten. habe lediglich hier im forum gelesen, dass das irgendwie nicht läuft wenn das platform sdk zu neu ist..? ich hatte zuerst wie im buch beschrieben das von 2005, das hat zu pc abstürzen geführt, jetzt habe ich eins von 2010. mein visual ist ebenfalls 2010. die projekteinstellunegn müssten richtig sein, das beispiel zu den adapterinformationen hat nämliuch funktioniert. die zusätzlichen header "InitWindow.h" und "Resource.h" habe ich auch mit verzeichnis angegeben und die "InitWindow.cpp" dem Projekt hinzugefügt.

sieht dann so aus:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <Windows.h>
#include <TriBase.h>
#include "C:\\Users\\Benny\\Desktop\\CD\\Beispiele\\Allgemeines\\InitWindow.h"
#include "C:\Users\Benny\Desktop\CD\Beispiele\Kapitel 02\01 - Fenster\\resource.h"

tbResult Render (float fNumSecsPassed)
{
    return TB_OK;
}

tbResult Move (float fNumSecsPassed)
{
    return TB_OK;
}

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, char* pcCmdLine, int iShowCmd)
{
    tbInit();
    InitWindow(640, 480, "Beispielprogramm Nr.1: Fenster", LoadIcon (hInstance, MAKEINTRESSOURCE(IDI_ICON1)));

    tbDoMessageLoop(Render, Move);
    
    ExitWindow();

    tbExit();

    return 0;
}


und das ergebnis so:

Zitat

1>------ Erstellen gestartet: Projekt: adapter, Konfiguration: Debug Win32 ------
1> main.cpp
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(19): error C3861: "MAKEINTRESSOURCE": Bezeichner wurde nicht gefunden.
1> InitWindow.cpp
1>c:\users\benny\desktop\cd\beispiele\allgemeines\initwindow.cpp(23): error C2440: 'Initialisierung': 'const char [16]' kann nicht in 'LPCWSTR' konvertiert werden
1> Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
1>c:\users\benny\desktop\cd\beispiele\allgemeines\initwindow.cpp(50): error C2664: 'CreateWindowExW': Konvertierung des Parameters 2 von 'const char [16]' in 'LPCWSTR' nicht möglich
1> Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
1>c:\users\benny\desktop\cd\beispiele\allgemeines\initwindow.cpp(67): error C2664: 'UnregisterClassW': Konvertierung des Parameters 1 von 'const char [16]' in 'LPCWSTR' nicht möglich
1> Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
1> Code wird generiert...
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
sagt mir nur bahnhof. ich habe eigentlich schon wieder en andren platform sdk zu installieren, schließlich muss es ja auch im jahre 2010 noch möglich gewesen sein, ein stinknormales fenster in c++ zu erstellen?! oder soll ich den teil des buches einfach ohne selbst experementieren überfliegen? da steht nämlich auch noch, dass man den InitWindow-Krempel nur braucht, bis man die entsprechenden sachen der tribase engine kennt...?!

2

17.01.2011, 20:32

1.Möglichkeit: Du setzt vor jeden char* in der InitWindow ein L
2.Möglichkeit: Du stellst von Unicode auf Multibyte Zeichensatz um

und du musst die resource.h noch hinzufügen.
Metal ist keine Musik sondern eine Religion.

3

17.01.2011, 21:37

resource.h ist doch drin? der muckt rum, wenn ich einfach nur "#include "resource.h" " hinschreibe, weil es eben genau wie die InitWindow.h nicht im projektordner is, sondern im ordner mit allen datein von der CD vom buch.

zur 1. möglichkeit: wie jetzt? char* Ltext ? oder sogar Lchar* text ? beides probiert, beides nicht funktioniert.
zur 2. möglichkeit: sagt mir so garnix eigentlich (und jetzt bitte nicht rumpöbeln, ich hab extra noch im "c++ für spieleprogrammierer" im stichwortverzeichnis nachgesehen, da steht nichts davon).

4

17.01.2011, 21:46

zu 1: du musst vor das erste " das L setzen
und zu 2: Projekt->Eigenschaften->unicode in Multibyte umstellen
Metal ist keine Musik sondern eine Religion.

5

17.01.2011, 21:56

error C3861: "MAKEINTRESSOURCE": Bezeichner wurde nicht gefunden.

der bleibt. danke schonmal für den anfang ;)

6

18.01.2011, 07:05

ich mein das ware ein #define in der resource.rc. Hast du die mit drin?
Metal ist keine Musik sondern eine Religion.

7

18.01.2011, 12:02

MAKEINTRESSOURCE -> MAKEINTRESOURCE -.-
tut mir leid. danke für die hilfe !

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »bewa« (18.01.2011, 12:07)


8

22.01.2011, 17:21

um hier nicht tausend neue themen für jeden kleinen mist aufzumachen, schreib ichs grad hier dabei. das beispielprogramm mit dem nebel funktioniert jetzt auch nicht.

Zitat

1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(68): error C2065: 'IDC_RANGE_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(70): error C2065: 'IDC_VERTEX_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(72): error C2065: 'IDC_LINEAR_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(73): error C2065: 'IDC_EXP_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(74): error C2065: 'IDC_EXP2_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(77): error C2065: 'IDC_PIXEL_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(79): error C2065: 'IDC_LINEAR_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(80): error C2065: 'IDC_EXP_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(81): error C2065: 'IDC_EXP2_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(86): error C2065: 'IDC_FOG_START': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(88): error C2065: 'IDC_FOG_END': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(90): error C2065: 'IDC_FOG_DENSITY': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(309): error C2065: 'IDC_VERTEX_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(310): error C2065: 'IDC_LINEAR_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(311): error C2065: 'IDC_RANGE_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(312): error C2065: 'IDC_FOG_START': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(313): error C2065: 'IDC_FOG_END': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(314): error C2065: 'IDC_FOG_DENSITY': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(315): error C2065: 'IDC_FOG_START': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(316): error C2065: 'IDC_FOG_END': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(317): error C2065: 'IDC_FOG_DENSITY': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(320): error C2065: 'IDC_OUTPUT': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(344): error C2065: 'IDC_FOG_COLOR': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(349): error C2065: 'IDC_FOG_COLOR': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(352): error C2065: 'IDC_FOG_COLOR': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(366): error C2065: 'IDC_SELECT_FOG_COLOR': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(366): error C2051: case-Ausdruck ist keine Konstante
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(384): error C2065: 'IDC_LINEAR_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(384): error C2051: case-Ausdruck ist keine Konstante
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(385): error C2065: 'IDC_LINEAR_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(387): error C2065: 'IDC_FOG_START': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(388): error C2065: 'IDC_FOG_END': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(389): error C2065: 'IDC_FOG_DENSITY': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(393): error C2065: 'IDC_EXP_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(393): error C2051: case-Ausdruck ist keine Konstante
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(394): error C2065: 'IDC_EXP2_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(394): error C2051: case-Ausdruck ist keine Konstante
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(395): error C2065: 'IDC_EXP_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(396): error C2065: 'IDC_EXP2_FOG': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(398): error C2065: 'IDC_FOG_START': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(399): error C2065: 'IDC_FOG_END': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(400): error C2065: 'IDC_FOG_DENSITY': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(404): error C2065: 'IDC_QUIT': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(404): error C2051: case-Ausdruck ist keine Konstante
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(408): warning C4060: switch-Anweisung enthält weder 'case'- noch 'default'-Marken
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(413): error C2065: 'IDC_FOG_START_VALUE': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(413): error C2065: 'IDC_FOG_START': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(414): error C2065: 'IDC_FOG_END_VALUE': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(414): error C2065: 'IDC_FOG_END': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(415): error C2065: 'IDC_FOG_DENSITY': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(416): error C2065: 'IDC_FOG_DENSITY_VALUE': nichtdeklarierter Bezeichner
1>c:\users\benny\desktop\c++\adapter\adapter\main.cpp(440): error C2065: 'IDD_MAIN': nichtdeklarierter Bezeichner
alles was halt irgendwas mit nebel zu tun hat, führt zu einem fehler. muss ich da noch irgendetwas einbinden? ich kopiere die codes der beispiele und aufgaben alle immer ins gleiche projekt, um nicht ständig alles neu einstellen zu müssen. das programm mit den herumschwirrenden würfeln funktioniert im gleichen projekt.

Werbeanzeige