Mitigating Shims as a Persistence Mechanism

App compat shims are a terrific tool for enabling you to modernize your operating system. By resolving app compat issues, this tool has enabled many, many customers to update to the latest version of the operating system, and sometimes even remediate issues with patches. And I would assert that the security value of this modernization…


Why Windows 8.1 Sometimes Tells You It Is Windows 8.0

A few years back, I ran some analysis on the shims that were applied to applications (both for commercial applications in sysmain.sdb and for those applications shimmed in our enterprise engagements), and though VirtualRegistry eeked out a victory, if you were to consolidate the version lie shims, they became the clear victor. This, to me,…


Changes to Shim Global Exclude in Windows 8

Lex III: Actioni contrariam semper et æqualem esse reactionem: sive corporum duorum actiones in se mutuo semper esse æquales et in partes contrarias dirigi. I remember a time when all bugs were bad, and it was my job to find and destroy them all. That, of course, was when I was a developer. My perspective…


Managing the Windows 7 Program Compatibility Assistant (PCA)

I wanted to document a bit of detail about managing the Program Compatibility Assistant, a bit of technology we added for Windows Vista and have been enhancing since that time – I figured it was probably time that we came out with an update for Windows 7. What motivated this was a series of conversations…


Shims – Are They Really Such Nasty Bits?

I wanted to post a response to what I consider to be somewhat suboptimal advice, with the hopes of correcting it. In recorded history, there have been a number of classic blunders when it comes to advice. They include: “Hey, let’s start a land war in Asia!” “I really think you should buy the Betamax…


Understanding the AdditiveRunAsHighest Flag on Windows 7

This post corrects an error from a previous post. Back when I was explaining the changes in the operating system layers for Windows 7, I incorrectly described the AdditiveRunAsHighest. Since RunAsHighest is already confusing enough, and AdditiveRunAsHighest is even more confusing (even I got it wrong), I want to make sure I actually get it…


Why Do Some Operating System Modes Include AdditiveRunAsHighest While Others Do Not?

A little while back, those of us who explain application compatibility for a living and try to help people get their arms around it ran up against those who implement it in the product on the scale of … the whole earth. Those of us who explain things for a living really prefer (really, really…


Stock Viewer Shim Demo Application – Now Available in Japanese!

I have had the Stock Viewer Shim Demo application available for over a year now, and I’m delighted at how much impact it has had. I see people using this all the time! But previously it was available only in English. Well, no more – it has now been (mostly) localized to Japanese! Enjoy. ja-jp…


PCA Changes for Windows 7: How To Tell Us You are Not an Installer, Take 2 (because we changed the rules on you)

I have an ongoing conversation with a customer whose application is now popping up a Program Compatibility Assistant dialog box, where it didn’t used to before (on either Windows Vista or Windows 7 beta). What’s going on? Well, when I cracked the resources for the binary, you can spot right away that it’s going to…


ComputerWorld Article on Shims

ComputerWorld did a story on shims featuring my session from TechEd North America – check it out: