SFML community forums

Help => General => Topic started by: thyagobr on March 07, 2013, 06:58:39 pm

Title: [SOLVED] Weird DLL error
Post by: thyagobr on March 07, 2013, 06:58:39 pm
Hi guys. I'm a SFML beginner, and I just went through the process of installing it. What I did was to follow this tutorial (http://sfmlcoder.wordpress.com/2011/06/15/building-sfml-2-nmake/) (http://sfmlcoder.wordpress.com/2011/06/15/building-sfml-2-nmake/) to download SFML 2.0 and compile it for Visual Studio 20[12] with CMake and NMake. Everything went well, and I ran the sample code.

That's where things got weird. I use Avast! Antivirus, and it always makes a little sandbox for programs to run on it before actually running on windows. So, I compile my program, no errors, and run it. Avast! pops up, the program runs on its sandbox, I get my blank SFML window, all perfect. Then Avast! asked me if I'd like to allow my program to be executed on my computer, and I said yes. And then I got the message that "sfml-graphics-d-2.dll is missing". The thing is: 1) it's not, it's there on the executable folder and 2) it worked on Avast! sandbox!

Does anybody have a clue of what might be happening? Meanwhile, I'll recompile the sources and re-configure the project's properties all over again. Thanks a bunch.
Title: Re: Weird DLL error
Post by: thyagobr on March 07, 2013, 07:07:06 pm
Just so no one will bother, or to help future users, I decided to throw all my dll's into Windows's System32 and SysWOW64 folders, and now it works. I guess my error was: I was throwing the DLL's on the "\Project_Name" folder. Maybe I should have placed them on "\Project_Name\Debug" or "\Project_Name\Release".

I still find it weird, though, that Avast!'s sandbox was able to run it anyways.
Title: Re: [SOLVED] Weird DLL error
Post by: Jebbs on March 07, 2013, 07:49:09 pm
Inside the Debug and Release folders is usually where the dll's would be placed. Especially if you were to have someone else run your game/application as this doesn't require them to copy or move the dll's themselves into their system folders.  My guess is that it worked fine with Avast because it has its own dll search method since it was what ran the program.