Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

sfml problem z uruchomieniem czegokolwiek

Ostatnio zmodyfikowano 2012-06-01 11:42
Autor Wiadomość
aimo6
Temat założony przez niniejszego użytkownika
sfml problem z uruchomieniem czegokolwiek
» 2012-05-31 16:34:11
Witam.
Ostatnio szukałem jakiejś łatwej biblioteki. Znalazłem kurs dot. SFML. Zainstalowałem bibliotekę i próbuję powoli go przerabiać. Wszystko się ładnie kompiluje, jednak po uruchomieniu jest gorzej.
 
A buffer overrun has occurred in sfml.exe which has corrupted the program's internal state. Press Break to debug the program or Continue to terminate the program.

For more details please see Help topic 'How to debug Buffer Overrun Issues'.

sfml.exe has triggered a breakpoint

kompletnie nie rozumiem o co chodzi.

dzieje się to np. w takim kodzie:
C/C++
#include <SFML/Graphics.hpp>

int main()
{
    sf::RenderWindow oknoAplikacji( sf::VideoMode( 800, 600, 32 ), "Kurs SFML - http://cpp0x.pl" );
    sf::Image obrazek;
    obrazek.LoadFromFile( "bmp.bmp" );
   
    sf::Sprite naszSprajt;
    naszSprajt.SetImage( obrazek );
    naszSprajt.SetPosition( 400, 300 );
    naszSprajt.SetScale( 5, 5 );
   
    while( oknoAplikacji.IsOpened() )
    {
        sf::Event zdarzenie;
        while( oknoAplikacji.GetEvent( zdarzenie ) )
        {
            if( zdarzenie.Type == sf::Event::Closed )
                 oknoAplikacji.Close();
           
        }
       
        const sf::Input & sterowanie = oknoAplikacji.GetInput();
        if( sterowanie.IsKeyDown( sf::Key::Left ) )
             naszSprajt.Move( - 0.2, 0 );
       
        if( sterowanie.IsKeyDown( sf::Key::Right ) )
             naszSprajt.Move( + 0.2, 0 );
       
        if( sterowanie.IsKeyDown( sf::Key::Up ) )
             naszSprajt.Move( 0, - 0.2 );
       
        if( sterowanie.IsKeyDown( sf::Key::Down ) )
             naszSprajt.Move( 0, + 0.2 );
       
        oknoAplikacji.Clear( sf::Color( 255, 0, 0 ) );
        oknoAplikacji.Draw( naszSprajt );
        oknoAplikacji.Display();
    }
    return 0;
}

oraz otwierają się 2 pliki:
-dbghook.c
-gs_report.c

Jeżeli to może być potrzebne używam visuala 2010 expres
P-57538
m4tx
» 2012-05-31 17:02:29
Uruchamiasz aplikację wraz z debuggerem. Uruchom samą aplikację - zazwyczaj robi się to za pomocą F9 lub za pomocą przycisku z zieloną strzałką, w zależności od IDE może być inaczej.
P-57545
aimo6
Temat założony przez niniejszego użytkownika
» 2012-05-31 17:13:53
Niestety nic nie daje. Program przestaje po prostu działać.
Gdy wytnę wszystko zostawiając tylko tworzenie okna pętle i zamykanie to wyskakuje:
Run-Time Check Failure #2 - Stack around the variable 'oknoAplikacji' was corrupted.
więc wychodzi że chyba coś z klasą renderwindow jest coś nie tak.
Tylko nie mam pojęcia co.
P-57546
pekfos
» 2012-05-31 19:37:56
A sam kompilowałeś SFML?
P-57552
aimo6
Temat założony przez niniejszego użytkownika
» 2012-05-31 19:41:53
tzn? Robiłem tylko to co było w totku na oficjalnej stronie.
P-57553
Admixior
» 2012-05-31 20:51:59
Na stronie w tutorialu jest napisane jak dodać libki, ale te kompilacje są pod Visual 2008. Przekompiluj je.
1. W folderze SFML-1.6\build\vc2008 masz SFML.sln
2. Otwierasz, samo ci się konwertuje (klikasz dalej)
3. Wychodzi kilka Warnings i 0 Errors
4. Kompilujesz wszystkimi sposobami (debug dll, debug static, release...) (chyba że wiesz o co w tym chodzi, długo schodzi tego tłumaczenie, więc jak będziesz bardzo chciał to powiem)
5. wchodzisz w SFML-1.6\lib\vc2008 i tam masz *.lib i *.dll.
6. Przenosisz je do odpowiednich folderów (tam gdzie wcześniej) i zamieniasz

//Jak korzystasz z SFML 2.0 To nie potrafię pomóc. Tam nie ma kodów źródłowych (jak na razie chyba).
P-57562
aimo6
Temat założony przez niniejszego użytkownika
» 2012-05-31 21:20:18
Dzięki, ale to chyba nie wszystko.
po każdej kompilacji SFML wyskakuje:


solution folders are not supported in this version of the application
solution folder samples will be displayed as unavailable

czy to normalne?
nic się nie zmieniło, nadal jest tak samo.

i mam kolejne pytanie co do sfml

czy wer. 2.0 jest kompatybilna z 1.6?
jeśli tak to nie będę się w to bawić tylko od razu ściągnę 2.0(jest dla visual 2010)
P-57579
Admixior
» 2012-05-31 22:02:45
hmm... Przy kompilacji czy przy konwertowaniu? Jak przy kompilacji to pokazuje oprócz tego:

1>Build succeeded.
1>
1>Time Elapsed 00:00:00.53
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
czy co?

Mi takie coś w każdym razie nie pokazywało się. Mam Visual 2010 Ultimate.
A co do folderów to są takie pół przeźroczyste, bo może i ten visual już nie obsługuje ich.

I jeszcze trochę nie sprecyzowałem.
Kompilacje robisz tak:
ustawiasz debug dll
Klikasz prawym na projekt sfml-audio i później rebuild
powtarzasz dla sfml-graphics i sfml-network

ustawiasz później kolejno opcje: debug static, release dll i release static
i to samo co wyżej dla każdej z tych opcji

//Wersja 2.0 różni się tym że ma np inaczej nazwane funkcje lub też był na tym forum kiedyś post o czyś zupełnie zmienionym
//http://cpp0x.pl/forum/temat/?id=7203
P-57583
« 1 » 2
  Strona 1 z 2 Następna strona