Recommended Posts

I am aware that you guys are tired from seen this topic in so many different
variations.
Well basically its the ""This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix the problem".
Now here is the way i tried to resolve this issue, maybe you guys can point me where i went wrong.
V - I tried different compilers for my code.
V - I tried including other DLL`s dependency walker asked me to.
V - When i tried setting my code generation to mt (multi threaded), i got Linking errors (multi defined symbols linking), When i tried ignoring the library that defined them with SDL library(LIBCMT.lib), i got unresolved symbols linking error.
1.)My code is generated via md (multi threaded dll), also tried mt (multi threaded, didnt worked as i mentioned earlier).
2.)build mode is set to Release.
3.)SDLMain and SDL libs included (no other resources used).
4.) All DLL`s that dependency walker asked are in the working directory + the latest version of SDL.
5.) All testing pc`s are admins (for these who claim its a privilege problem)
Q1.)Are there any other ways to solve that (besides asking people i send them my applications to install packs)?
Q2.)I noticed something about Recompiling the entire SDL library, can someone direct me to how to do so? i searched myself but couldn't find a resource explaining how to do so, Also i have no experience in how to compile libraries and dll`s at all.
Thanks in advance and sorry for any sign of ignorance :)
Have a nice day.
[Edited by - Illasera on January 7, 2009 9:28:10 AM]

Share this post

Link to post

Share on other sites

If I am not mistaken that is an issue with the manifest embedding on your executable, usually it comes up in relation to the MS C library, try reinstalling the proper VC redistributable libraries or if anything else fails, an updated version of the Platform SDK.

0

Share this post

Link to post

Share on other sites

Ah yes, now it makes click, but unfortunately I only remember that I fixed that once by providing all needed DLLs; sorry.

As for Question 2): There should be no need to recompile SDL, but probably there is a README in the sources. Also note that you could get into legal issues when your project's license is incompatible to LGPL, basically that is if your project is not open source. See* click* clack

0

Share this post

Link to post

Share on other sites

Original post by KwizatzIf I am not mistaken that is an issue with the manifest embedding on your executable, usually it comes up in relation to the MS C library, try reinstalling the proper VC redistributable libraries or if anything else fails, an updated version of the Platform SDK.

I am sorry if i dont get you right, Do you mean to Purify MSVC?

Sort of like reinstalling msvc and only use the current latest libraries?

Also

Quote:

Original post by phresnelAh yes, now it makes click, but unfortunately I only remember that I fixed that once by providing all needed DLLs; sorry.

So did i on the tested standard pc and checked with dependency, all DLL`s supplied but still same issue.

[Edited by - Illasera on January 7, 2009 10:52:37 AM]

0

Share this post

Link to post

Share on other sites

Depending on your compiler you may need to do extra steps to properly deploy your application. For example, with MSVC 2008, in order to load the CRT libraries, you need to have an application manifest in your executable. Otherwise, the CRT DLL won't start up properly. However, if you apply that manifest, you should also make sure that the CRT is deployed properly, preferably by running the MSVC 2008 redistributable package installer or the application won't start properly.

Share this post

Link to post

Share on other sites

Original post by IllaseraI am sorry if i dont get you right, Do you mean to Purify MSVC?

Sort of like reinstalling msvc and only use the current latest libraries?

Not necessarily reinstalling Visual Studio but make sure your executable is using the latest dlls and they are placed in the right places, IIRC the msvcr90.dll or msvcr80.dll expect to be located in a specific directory as for their manifests, so if there are any other copies on the way, either remove them, or take their path out the PATH environment variable.

I meant installing the VC redistributable packages (20052008), though that should be only necessary for machines not having VS installed where you want to run the program.

Also I mentioned Platform SDK which is basically an update to the headers and libraries shipped with Visual Studio.

And then i started playing the File Elimination game, As for i knew since it was a release version that a required file was (msvcr90.dll), It seems to be that "Microsoft.VC90.CRT.manifest" was also required and that what seems to be causing the problem.

Now a question if i may.

In my "Project" the option of Generate manifest was active, Doesnt generate the mainfast code into the executable file?

Thank you all for your help ( phresnel & Kwizatz & SiCrane), and i hope this info will also help future generation :) or the next person who will heve this problem :)

Share this post

Link to post

Share on other sites

Original post by IllaseraIn my "Project" the option of Generate manifest was active, Doesnt generate the mainfast code into the executable file?

Yes, it is supposed to, but the manifest may limit the places from which a dll is loaded, so if it says it should be in C:\Windows\System32, but it is picking it from C:\RandomApp\Dlls for example, the runtime linker will pick that up as an error and refuse to run the executable.