Robert Turner

In this test case, one of the requirements is that table in the MSI file are not prefixed with ¡°msi¡±.

We are using merge modules for MFC (as provided by Microsoft) that tables that have the prefix ¡°Msi¡±. I would imagine that this would fail the requirements.

Does anyone have any ideas what is the recommended practice in this case



Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Oliver Lundt - MSFT

I think you are correct this would fail. Although a practice for pre vista, it appears for vista deployment this is discourged. Let us know you want us to double check this with the logo team.

This link (option #2) shows an alternative. This could be done through bootstrapper or chainer exe.
http://msdn2.microsoft.com/en-us/library/ms235316(VS.80).aspx






Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Robert Turner

I would appreciate getting an answer from someone in the logo team. It seems that the various departments are not in "synch" when in comes to ensuring that products deployed using standard/recommended practices will not pass logo certifications.

Certainly we could use a bootstrapper - however, this becomes fairly painful and inelegant for users. It also sort of defeats the idea of Windows Installer systems if you cannot use it to actually install half the things you need.

We already are forced to use a bootstrapper for the .NET framework and MSDE/SQL Express.

Thanks,

Robert





Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Bruce N. Baker - MSFT

I have passed this question and and will get back with you.




Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Bruce N. Baker - MSFT

Can you modify the merge modules What are the merge modules for and where did they come from




Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Robert Turner

I don't believe it would be appropriate to modify the merge modules and it might violate redistribution rights in the Microsoft EULAs.

As mentioned in a previous posting, the Merge Modules are the MFC and C++ runtime modules provided by Microsoft with the Visual Studio 2005 compiler. Details are as follows:

For the Runtime libraries:

 

Microsoft_VC80_CRT_x86.msm

policy_8_0_Microsoft_VC80_CRT_x86.msm

 

For MFC (Microsoft Foundation Classes):

 

Microsoft_VC80_MFC_x86.msm

policy_8_0_Microsoft_VC80_MFC_x86.msm

 

For MFC localization:

 

Microsoft_VC80_MFCLOC_x86.msm

policy_8_0_Microsoft_VC80_MFCLOC_x86.msm

They contain a table named "MsiSFCBypass" which according to Test Case #22 in the Certified for Windows Vista test case documents is not permitted and causes a test case "failure".





Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Bruce N. Baker - MSFT

MsiSFCBypass is consider acceptable so your good to go.




Re: Application Compatibility for Windows Vista Test Case #22: MFC Merge Modules contain tables prefixed with "msi"

Robert Turner

Thanks.