dzar
Posts: 10
Joined: Tue Apr 04, 2006 3:15 am

Application failed to start error

I am sure this is related to Windows and the latest Microsoft compiler (VS 2005), but I'm hoping some one here has seen this and can point me in the right direction.

After rebuilding my application and creating a new install file, on a new machine I get an error that "The applicaion has failed to start..." Any pointers to where the fix might be?

Thanks!

Dave
Ionut
Posts: 605
Joined: Tue Nov 22, 2005 11:29 am
Contact: Website

Hi,

This seems to be a problem related to the resources required by your application to run successfully (registry entries, COM modules that need to be registered - most likely, additional files etc).

Regards,
Ionut
Denis Toma
Advanced Installer Team
http://www.advancedinstaller.com/
dzar
Posts: 10
Joined: Tue Apr 04, 2006 3:15 am

I agree something is mising, but what? Somthing from Microsoft as my source code that compiles and runs perfectly unser VS 2003, when recompiled under VS 2005 (with no modifications) fails in this manner. VS 2005 uses some newser libraries and such but I've been unable to pinpoint which one(s) are causing this problem and I can't include 100 MB of MS dlls in my install.

Why doesn't Microsoft give useful error messages and why don't they document this stuff... I'm over on MSDN and not getting any answeres, their, either.

Dave
Ionut
Posts: 605
Joined: Tue Nov 22, 2005 11:29 am
Contact: Website

Hi Dave,

First, determine the dependencies of your application using a tool such as Dependency Walker ("depends.exe") distributed with Visual Studio or with the Platform SDK. This program also has a profiling feature which can be used to see which DLLs are dynamically loaded. Then, you should be able to determine which DLLs need to be distributed with your application. See these pages for more information:
http://msdn2.microsoft.com/en-US/librar ... S.80).aspx
http://msdn2.microsoft.com/en-US/librar ... S.80).aspx

The final step would be to choose a deployment method. Visual C++ 2005 libraries are installed as shared side-by-side assemblies. Therefore, you can use the Visual C++ redistributable Merge Modules (the libraries will be installed as shared side-by-side assemblies on the target computer) or you can install the libraries as private assemblies for the application. Also make sure that your application is built with a manifest (either embedded as a resource, or accompanying the binary as an external file - which you must distribute). See this page for more details:
http://msdn2.microsoft.com/en-US/librar ... S.80).aspx

If this does not solve the problem, please give me more details about your application and maybe I can help.

Regards,
Ionut
Denis Toma
Advanced Installer Team
http://www.advancedinstaller.com/

Return to “Common Problems”