473,394 Members | 1,722 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

Linker generated Manifest version differs from Redist versions

I am finding that the linker for a C++ application in VS 2005 is generating a
manifest with old version #s for DLLs such as mfc80.dll.

How do I make sure that the linker generates a manifest that reflects the
correct versions numbers of the DLLs?
My application appears not to run on the target XP because of this mismatch.

Thanks!
Apr 18 '06 #1
4 2862
Hi HarryH!
I am finding that the linker for a C++ application in VS 2005 is generating a
manifest with old version #s for DLLs such as mfc80.dll.

How do I make sure that the linker generates a manifest that reflects the
correct versions numbers of the DLLs?
Have you took a look into the "SxS\Policy" folder!?
There is a policy for every file which redirects the older version to
the newer dll ;-)

My application appears not to run on the target XP because of this mismatch.


No. This is not the case. It will run, if you either
- have installed the vc_redist.exe in the SxS folder
- put the DLLs with the accoring manifest from the redist directory in
the same dir as the app

--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
Apr 18 '06 #2
Thanks Jochen.

Some further questions then please.

My development XP machine defintely has the policy upgrade as you suggest -
but then why does the manifest get created with an older version#?

Also the target XP has also policy upgrade - but it does not reach the
correct version number of my redistributable DLLs?

I will look at your following suggestion:
"It will run, if you either
- have installed the vc_redist.exe in the SxS folder
- put the DLLs with the accoring manifest from the redist directory in
the same dir as the app"

Thanks!

"Jochen Kalmbach [MVP]" wrote:
Hi HarryH!
I am finding that the linker for a C++ application in VS 2005 is generating a
manifest with old version #s for DLLs such as mfc80.dll.

How do I make sure that the linker generates a manifest that reflects the
correct versions numbers of the DLLs?


Have you took a look into the "SxS\Policy" folder!?
There is a policy for every file which redirects the older version to
the newer dll ;-)

My application appears not to run on the target XP because of this mismatch.


No. This is not the case. It will run, if you either
- have installed the vc_redist.exe in the SxS folder
- put the DLLs with the accoring manifest from the redist directory in
the same dir as the app

--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/

Apr 18 '06 #3
Hi HarryH!
My development XP machine defintely has the policy upgrade as you suggest -
but then why does the manifest get created with an older version#?
It seems that the CRT sources/h-files are checked in earlier than the
CRT build was done (which is quite normal).
(in the h-file the manifest is added to your linker settings via #pragma...)
Also the target XP has also policy upgrade - but it does not reach the
correct version number of my redistributable DLLs?
Why not!?
The CRT has the version "8.0.50727.42"
And the redirect will be from "8.0.41204.256-8.0.50608.0" to this new
version...

Also if you use the local manifest for app-local assemblies, then the
manifest contains the correct version "8.0.50608.0". The version of the
DLL is then not checked...
I will look at your following suggestion:
"It will run, if you either
- have installed the vc_redist.exe in the SxS folder
- put the DLLs with the accoring manifest from the redist directory in
the same dir as the app"


See also:
http://www.codeproject.com/cpp/vcredists_x86.asp
--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
Apr 18 '06 #4
Hi Jochen-

You have provided me great information here!

My problem was indeed an issue with the vcredist_x86 as you noted.
My previous constructions were correct but were missing this important piece
on the target platform. Now on to get installshield to execute vcredist_x86.

Thanks very much!

"Jochen Kalmbach [MVP]" wrote:
Hi HarryH!
My development XP machine defintely has the policy upgrade as you suggest -
but then why does the manifest get created with an older version#?


It seems that the CRT sources/h-files are checked in earlier than the
CRT build was done (which is quite normal).
(in the h-file the manifest is added to your linker settings via #pragma...)
Also the target XP has also policy upgrade - but it does not reach the
correct version number of my redistributable DLLs?


Why not!?
The CRT has the version "8.0.50727.42"
And the redirect will be from "8.0.41204.256-8.0.50608.0" to this new
version...

Also if you use the local manifest for app-local assemblies, then the
manifest contains the correct version "8.0.50608.0". The version of the
DLL is then not checked...
I will look at your following suggestion:
"It will run, if you either
- have installed the vc_redist.exe in the SxS folder
- put the DLLs with the accoring manifest from the redist directory in
the same dir as the app"


See also:
http://www.codeproject.com/cpp/vcredists_x86.asp
--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/

Apr 19 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Pankaj Bhagat | last post by:
Hi, This is in context with compiler and linker Can someone let me know 1) what is a binder? where is it needed? What does it do in a compiling process? ----------------- 2) When I have a...
0
by: Neil Sargent | last post by:
This is a general posting of how I fixed a problem created by using the Access 97 ODE Setup Wizard on a Windows XP machine. I hope it helps anyone who comes across the problem saves them the 3 days...
0
by: Namratha Shah \(Nasha\) | last post by:
Hi All, Assembly linker is a tool which is used to create an assembly by combining one or more .netmodules and resource files. In simple words an .netmodule is an IL file that does not have ...
3
by: ralphsieminsky | last post by:
A project compiles fine under VS 2005 RC without the /clr option. However, when /clr is turned on several errors appear: - A symbol exported from a DLL is not found by another DLL referencing...
0
by: jamiec | last post by:
Hi, I have 2 different versions of COM libraries (version 1 and version 2). They both are allowed to exist in the system and the caller (.exe) uses .manifest file to decide which version of COM...
2
by: Rob R. Ainscough | last post by:
I'm using an application manifest for a "managed" application I'm coding. Can anyone tell me if the version changes? Example: MyApp.exe.manifest .... <assembly...
3
by: Richard Lewis Haggard | last post by:
We are having a lot of trouble with problems relating to failures relating to 'The located assembly's manifest definition with name 'xxx' does not match the assembly reference" but none of us here...
3
by: RossettoeCioccolato | last post by:
Is there a brief tutorial somewhere on how to use the VC8 linker to generate a manifest for an isolated application with a dependency section for an arbitrary dll? There are some implementation...
1
by: David Cournapeau | last post by:
Hi, I am trying to make numpy build with python 2.6 on windows, and it has been a bumpy road. Building with MS tools works OK, but building with mingw is still problematic. The problems are...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.