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

06.09.2007, 18:33

SDL funzt nich

Heyho, is schon etwas länger her, dass ich was geschrieben hab.

Also: Ich benutze VC2005 XPress für die SDL (in Borland funzt das ja nich)...Folgendes Programm führt bei mir zu einem Fehler:

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
// Nur zum Test, ob SDL funktioniert

#pragma comment(lib,"SDLmain")
#pragma comment(lib,"SDL")

/*
#ifdef _WIN32
#undef main
#endif*/

#include <stdio.h>
#include "SDL\SDL.h"

int main(int argc, char *argv[])
{
    if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO)==-1)
    {
        printf("Couldn't initialize SDL: %s\n",SDL_GetError());
        exit(-1);
    }
    SDL_Quit();
    exit(0);
}


kann mir einer sagen, was ich falsch mache?

denjo

Treue Seele

Beiträge: 163

Wohnort: BLB

  • Private Nachricht senden

2

06.09.2007, 18:41

vllt könntest du einfach mal die Fehlermeldungen posten, die wahrscheinlich sehr hilfreich wären, um den "Fehler" ausfindig zu machen... :roll:
"Irren ist menschlich, Vergeben göttlich."
- Alexander Pope -

3

06.09.2007, 19:48

Ja Fehlermeldung wär mal hilfreich... aber ich denke ich sehe das Prob...
DU bindest die SDL.dll per #pragma comment(lib, "libname")
Bei dir ist der Fehler das du die endung lib vergessen hast
#pragma comment(lib,"SDL.lib")

Der Compiler weiß nich automatisch das du ne Datei mit der Endung *.lib einbinden willst

[edit]
Es gibt auch Libraries mit der Endung *.a zB von Dev-Cpp
[/edit]
http://www.pennergame.de/functions/generate_signature_114955.jpg

Wo die Fähigkeiten aufhören ... fängt der Optimismus an

"Unendlichkeit ist der Mangel an Grenzen" Aristoteles

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

4

06.09.2007, 20:09

Das du einen Visual Produkt verwendest kannst du die Bibliotheken auch unter den Projekteinstellungen unter "Linker" einfügen.

NicoWe

Treue Seele

Beiträge: 126

Wohnort: Bielefeld / NRW

  • Private Nachricht senden

5

06.09.2007, 21:50

Verzeichnisse unter VS2005?

Es kann auch sein, dass du einfach nur vergessen hast, das Verzeichnis
(Bei VS 2005 Express und 6.0 unter Extras->Optionen... und unter Projektmappen->VSC++-Verzeichnisse bzw. Verzeichnisse)
bei den Bibliotheksdateien anzugeben
DeinLaufwerk:\DeinSDLOrdner\lib

Ein paar Fehlermeldungen und Daten wären hilfreich... :roll:
Erfolg ist die Fähigkeit, von einem Misserfolg zum anderen zu gehen,
ohne seine Begeisterung zu verlieren.
-Winston Churchill-

6

17.09.2007, 17:54

hey Leute,

erstma ein großes Dankeschön für eure Antworten.....Konnte sie leider bisher noch nicht lesen.

Hier also mal die Fehlermeldung:

Quellcode

1
Unbehandelte Ausnahme bei 0x10014738 in SDL_Test.exe: 0xC0000005: Zugriffsverletzung beim Lesen an Position 0xfeeefeee.


tjo, sieht mal wieder sehr kryptisch aus.....kann mir jemand sagen, wie ich diesen Fehler beheben kann? Am Quellcode hat sich bisher noch nix geändert.

Da der #pragma-Befehl leider nur bei den Visual C++-Editoren funktioniert und in der Hilfe stand, dass man wenn man den Parameter lib angibt auch das lib am Endes des Bibliothekennamens weglassen kann, hab ichs einfach mal weggelassen :D

7

17.09.2007, 18:56

So wie der Fehlercode auszieht liegt es eindeutig an deinem Fehlercode... hast irgendwo ne Exception... Debug mal un geh alles einzeln durch.. dauert zwar aber dafür ist der Debugger ja da...
Liegt nicht an der LIB... liegt an deinem Sourcecode... reicht ja schon wenn ein Pointer NULL ist oder so...
http://www.pennergame.de/functions/generate_signature_114955.jpg

Wo die Fähigkeiten aufhören ... fängt der Optimismus an

"Unendlichkeit ist der Mangel an Grenzen" Aristoteles

DasBlub

Alter Hase

Beiträge: 802

Wohnort: Schweiz

Beruf: Programmierer

  • Private Nachricht senden

8

17.09.2007, 19:10

wenn du irgendwo (zumindest im zusammenhang mit c++) 0xC0000005 liest, heisst das im normalfall, das es ein nullpointer ist. prüf mal mit dem debugger (glaub die tasten f8-f10), welchen wert die variablen haben, und wo dass das programm abbricht.

9

18.09.2007, 15:44

also der Fehler taucht an dieser Stelle auf:

Quellcode

1
2
3
4
5
    if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO)==-1)
    {
        printf("Couldn't initialize SDL: %s\n",SDL_GetError());
        exit(-1);
    } 


und hier ist der Inhalt der Variablen(?):

Quellcode

1
    __tmainCRTStartup zurückgegeben.   -858993460  int
...like a baby who's sweet and innocent :-)

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

10

18.09.2007, 17:50

Schonmal das Ergebnis von SDL_GetError() erst zwischengespeichert und dann im nächsten Schritt erst ausgegeben?

Oder kommt die Exception schon beim Init?

Werbeanzeige