Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
03.05.2008, 11:02
the_Crow



Ich programmiere gerade an einem Spiel und verwende dazu die SDL (Simple DirectMedia Layer). Alles funtioniert, aber sobald ich eine Bitmap laden will bekomme ich einen Fehler zurück "Couldn't load xyz". Woran könnte das liegen?
Wo sucht das Programm nach der Datei?
Die .exe liegt im Ordner "Release" und die Bitmaps liegen in "Release/Data". Ich versuche sie auch von dort zu laden, aber das Programm findet die Datein nicht.

Ich hab auch versucht die Datei einfach mit ifstream zu öffnen, aber auch da wird sie nicht gefunden.

Hier noch der Quellcode, der das Problem verursacht.
Quellcode:// Load
// Aufgabe: Einfaches, nicht animiertes Sprite laden
void CSprite::Load(const string sFilename){

    // Bitmap laden
    m_pImage = SDL_LoadBMP(sFilename.c_str());

    // Prüfen, ob alles glatt ging
    if (m_pImage == NULL){
        cout << "Fehler beim Laden von: " << sFilename.c_str() << endl;
        cout << endl;
        cout << "Fehlermeldung: " << SDL_GetError() << endl;

        // Framework heruntefahren
        g_pFramework->Quit();

        // Gesamtes Spiel beenden
        exit (1);
    }

    //Rect initialisieren
    m_Rect.x = 0;
    m_Rect.y = 0;
    m_Rect.w = m_pImage->w;
    m_Rect.h = m_pImage->h;
} // Load

// Load
// Aufgabe: Animiertes Sprite laden
void CSprite::Load(const string sFilename, int NumFrames, int FrameWidth, int FrameHeight){

    // Bitmap laden
    Load(sFilename);

    // Rect für Animationsphase initialisieren
    m_NumFrames = NumFrames;
    m_FrameWidth = FrameWidth;
    m_FrameHeight = FrameHeight;
    m_FrameRect.w = FrameWidth;
    m_FrameRect.h = FrameHeight;
    m_NumFramesX = m_pImage->w / m_FrameWidth;
} // Load
Quellcode:m_pSpritePlayer = new CSprite;

m_pSpritePlayer->Load("Data/Player.bmp", 11, 64, 64);
Bildschirmausgabe
Quellcode:Fehler beim Laden von: Data/Player.bmp
Fehlermeldung: Couldn't open Data/Player.bmp

--

www.the-crow.at - meine persönliche Website | TibiaGerman | Twitter | Wiaschtlsiada


Dieser Beitrag wurde am 03.05.2008 um 11:04 von the_Crow bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
001
03.05.2008, 12:05
hausi



Soweit ich mich noch an MSVS erinnern mag, war das wd nicht Release, sondern einfach das Projektverzeichnis. Also einfach data eins nach oben verschieben.

--

zum Seitenanfang zum Seitenende Profil || Suche
002
03.05.2008, 12:21
the_Crow



Hab den richtigen Ordner. Es ist der wo alle .cpp und .hpp Datein drin sind ^^
Leider hab ich jetzt noch ein anderes Problem. "xyz.exe hat ein Problem festgestellt und muss beendet werden." Keine Ahnung woran das liegt. Beim Compile bekomm ich keine Warnungen.

Edit: Ich glaub ich weiß woran es liegt. Wenn ich mit Debug kompiliere bekomm ich folgende Fehlermeldungen:
Quellcode:Game.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""public: class CAsteroid const & __thiscall std::list<class CAsteroid,class std::allocator<class CAsteroid> >::_Const_iterator<1>::operator*(void)const " (??D?$_Const_iterator@$00@?$list@VCAsteroid@@V?$allocator@VCAsteroid@@@std@@@std@@QBEABVCAsteroid@@XZ)".
Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
H:\WORK\c++\SDL_Game\Debug\SDL_Game.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.

--

www.the-crow.at - meine persönliche Website | TibiaGerman | Twitter | Wiaschtlsiada


Dieser Beitrag wurde am 03.05.2008 um 12:26 von the_Crow bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
003
03.05.2008, 12:38
the_Crow



Haha ^^. Mit Release-Compile funktioniert es. Bei Debug bekomm noch immer die Fehler aus dem oberen Post.

--

www.the-crow.at - meine persönliche Website | TibiaGerman | Twitter | Wiaschtlsiada

zum Seitenanfang zum Seitenende Profil || Suche
004
03.05.2008, 13:08
caedes



probier doch mal gcc/mingw, vllt in verbindung mit codebocks oder eclipse cdt oder so..

--

caedes

Deutschland rückt nach Einschätzung der Sicherheitsbehörden im Superwahljahr verstärkt ins Visier von Terroristen.

zum Seitenanfang zum Seitenende Profil || Suche