If what you’re doing is undocumented, it’s not guaranteed to keep working, and your promise not to complain doesn’t really hold water

Raymond Chen

Raymond

A customer (via their customer liaison) wanted to know how their application can control another application’s common dialogs.

They have code that works on Windows XP that extracts the common dialog history from an undocumented registry key, then edits the history in order to inject themselves into it. It all works great. But on Windows 7, the structure of this registry key changed, and they cannot figure out how to reimplement the feature. Can you tell us where Windows 7 stores this information, and how to decode it, and how to re-encode the desired replacement data? Thanks!

The feature you desire is not supported. Mucking about in undocumented registry keys is not supported. The implementation can change at any time, and as your customer noticed, it did.

The customer liaison replied,

Yes, I was afraid that this was the case. But maybe somebody can tell us how to do it anyway. I have already told the customer that what they are doing is unsupported and can change at any time. I can provide a strong warning that this is something they should not be doing.

I replied, “The strong warning didn’t help last time, when they complained that their trick stopped working in Windows 7. There’s no indication that they won’t complain again when they test on Windows 8 and found that the keys changed again.”

The customer liaison conceded, “Good point.”

Raymond Chen
Raymond Chen

Follow Raymond