I wonder if your other DSFML thingy use threads or something... the GetOpenFileName function blocks until the user makes their choice. So that could be stalling the SFML event loop, or maybe having threading issues. I don't know. But I get the feeling that the problem is one of these two things.