
Originally Posted by
tgreaves
Understood.. Now I read in the Qt deployment article that I need the msvc runtime files and also the manifest file.. Problem is the "version" thats in the manifest for my program is different than the "version" of the manifest where my msvc runtime dlls are kept.. Any idea why this is?
you might be looking in the wrong place.. look in %windir%/WinSxs: there are several versions of the runtime dlls.
Just to make sure im correct here.. The manifest is to make sure that my program is using the version of the msvc dll's that it was built/tested on correct?
correct. If the versions do not match, you'll get the "Application failed to start ..." error.
I looked at google earth(written in Qt) and it doesnt have a *.manifest file in the program directory, why is that?
the manifest is embedded. If you open the executable with a text/hex editor, scroll to the bottom and you'll find the manifest, example:
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
</dependentAssembly>
</dependency>
To copy to clipboard, switch view to plain text mode
also have a look at dependency walker, a very usefull program to spot dependency problems.
Bookmarks