Re: Cannot run program on computer without Visual Studio installed?
"Campy Happer" <campyhapper@yahoo.com> wrote in message
news:8c1aa69a-8805-4cc9-8f0f-e2b39cdeb7ba@m36g2000hse.googlegroups.com...
Hi folks,
I have a setup.exe file and tested that it works on my machine which
has VC++ Express 9 installed on it. I tested that it works on another
machine with VC++ Express on it, too.
I tried installing it on a machine that does not have VC++ Express
installed however and it does not work.
The error is:
"This application has failed to start because the application
configuration is incorrect. Reinstalling the application may fix this
problem."
Not very specific, unfortunately.
I also tried installing the VC++ redistributable 2008 and that did not
help.
Any ideas as to how to fix this?
Also, I am including all DLLs that my program requires in the
setup.exe, which I am producing with InnoSetup.
Static linking is the best way to avoid this kind of thing, but if you're
having the difficultes that you are converting to it, it might be easier to
debug the failure here. So run Depends.exe (search using Google for it) and
it will tell you which DLL's cannot be loaded. Another option is app-local
deployment where the DLL's are not put into some global place but instead
into subdirectory of your .exe folder (and only your app can use it).
But running the VC++ redistributable should have installed the right
stuff... in theory. There are different redistributables if VS2008 SP1 is
installed (as opposed to if SP1 is not installed). There is also a thread
(forgot where at the moment) where Charles Wang from Microsoft admits that
installing .NET 3.5 broke installations of apps created with VC++, and there
was no workaround other than app-local deployment (and editing the manifest
so the loader would *only* use your app-local files and not the updated ones
that apparently are bad in the global place). I flamed about it enough in
the other thread; if you can't locate it reply here, and I'll try to find it
for you.
-- David