Welcome to MSDN Blogs Sign in | Join | Help

Chris Jackson's Semantic Consonance

Windows Application Compatibility in the Real World
Applying Shims (Compatibility Fixes) to Child Processes Using Layers (Compatibility Modes)

A comment came up on a recent posting regarding modules, inquiring about processes. Specifically:

Do these included/excluded modules have to be in the same process, or can they include other processes too?  (I have an application that calls multiple child applications that all need to be shimed in the same way as the first process)

Ah, that is a subject I appear to have not touched on here.

Shims, you see, apply to the process you specify, and only that process. Layers, however, apply to that process and to child processes. So, if you have a main application that launches child applications, applying the fixes as a layer will help you achieve that (assuming they are always launched by the shimmed parent process).

Note that Compatibility Administrator uses slightly different terminology here. It refers to shims as Compatibility Fixes, and layers as Compatibility Modes.

Layers are also handy as a means of applying a collection of fixes. You can group several fixes together and call them a layer. But the fact that layers apply to child processes is exactly why we include a WinXPSP2VersionLie layer in the system shim database. A collection of one isn't that interesting, but a collection of one that gets the shim applied to child processes? That's very interesting, particularly for self-extracting setups that like to think they are installing on XP.

If the child applications can be launched directly by Explorer, then you'll want to shim them up separately and we can't save you the work by having you just leverage a layer.

Posted: Monday, May 19, 2008 11:00 AM by Chris Jackson

Comments

Martin said:

Hi Chris,

this is very interesting information... I think that compatibility fixes and compatibility modes is quite confusing name, fixes and layers is much more descriptive (from perspective how these are applied)

Martin

# May 19, 2008 1:23 PM

Chris Jackson said:

Hi Martin,

Yeah - I don't think anybody's come across something that everyone loves yet. I don't name, I just fix. :-)

Chris

# May 19, 2008 3:48 PM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Page view tracker