Program not running for some people

Started by
18 comments, last by rmsimpson 18 years, 4 months ago
On some computers when trying to run the program the error "Failed to start because the application configuration was incorrect" is displayed. The only thing I can think of is that the computers that it does not run on are using WinXP SP1 and not SP2. Could this be what is causing the error? I'm using MSVC++ 2005 Express Edition if that makes any difference.
____________________________________________________________Programmers Resource Central
Advertisement
a little more info about the program would be helpful
It is likely that you need to distribute some DLLs with your program.

Google to the rescue: http://blogs.msdn.com/nikolad/archive/2005/03/18/398720.aspx
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=72965&SiteID=1
Don't you just love window's cryptic errors?

A bit more info would probably help someone narrow down you problem. But maybe this will give you a start:

It could be looking for a mismatched version of any runtime .dll or a missing .dll
Usually a different message is displayed will dll problems, but i've had this show up once or twice.

It could be that the computers have different version of the .NET runtimes ( if your program uses them ).

Or it could be a host of other things. One thing to try would be to find someone with VS2005, and have them run the program. It could be an issue caused only by the other computer missing a file that VS2005 installed.
If that is the case, run VS' "dependency walker" tool to find what files you need to distribute.
That is exactly the error message you get when you run TweakUI on a non-sp2 install of XP.
I tried following the help at http://blogs.msdn.com/nikolad/archive/2005/03/18/398720.aspx, but some people are still getting errors, and this time it is some one with SP2. Look here.
____________________________________________________________Programmers Resource Central
I've been dealing with the same problem for some time now. It is supposed to be solved if you distribute this files:

MSVCR80.DLL
MSVCP80.DLL
MICROSOFT.VC80.CRT.MANIFEST

Those files are copied from "WinSxs/Manifests" "WinSxs/x86_Microsoft.VC80.ATL_..." directories. But it doesn't always work. I downloaded your game and saw that you do distribute those files. I run it and it worked, but only because I too have VS2005 installed, and so it finds the necessary files in my "Windows/WinSxS" directory, it doesn't even use yours.

So I tried to "emulate" a computer that it doesn't have VS2005. I rename some directories in WinSxS so it can't find the files. I run your game again and I get the configuration error. I notice that your triplet of files(the 2 dlls and 1 manifest) seems to have different sizes by the files that are installed in my system(in WinSxS). So I copy these files, which have the exact same names in your directory, substituting your own files. And it worked! The exact same thing has happened to me. The files that I distribute sometimes work in other's people computers and sometimes don't.

I really don't know what the hell is going on. I'm searching the net like crazy but haven't found anything besides those blogs, and many people are having the same problems. I don't understand, why Microsoft hasn't come out and give a definite answer on this for all? I just have resorted for the time being to statically link(/MT) to the runtimes, but that's not a solution.
Don't quote me on this, but I've read somewhere on these forums that if you either chose to embed the manifest (or not, can't quite remember) then you won't have this problem.

You can find it somewhere in your project properties.
Instead of redistributing those DLL's, instead redistribute the "vcredist_x86.exe" file from the SDK\v2.0\BootStrapper\Packages\vcredist_x86 folder.

That should install the proper MFC/ATL/CRT runtimes in their proper locations. If you extract that exe, it contains a MSI file ... you could invoke that from your installer if you prefer.

Robert
Hmmmm, I direct you to my reply here, which refernces a different blog page on the matter and one which applies to the full release of VS2005.

And yes, it works, even to distro to Win2000 systems

This topic is closed to new replies.

Advertisement