Microsoft Windows undocumented APIs

Paul Thurrott’s recent book “Windows Everywhere” contains chapters about the anti-trust investigations against Microsoft. One of the accusations was that Microsoft was using hidden undocumented APIs to gain advantage in their products compared to third-party offerings. After the dust settled, Microsoft Windows API became much more open and documented.

But there are still some cases of hidden APIs.

For example, the List View control, introduced all the way back in Windows 95 is a very powerful and versatile UI control, utilized in the File Explorer. It has abilities to display items in various layouts like icons or columns and they can be grouped. Also, when needing to display a very large number of items, it supports virtualization, in which only the number of items is provided, and then when the List View has to display a particular item, is calls a callback to get the data for it.

Most of those capabilities are well documented. But surprisingly, if you want to create a List View that is both virtualized, and also groups the items, it is not possible using the official API – but Windows Explorer clearly can do this. Turns out that there are some undocumented interfaces like IOwnerDataCallback that need to be used to achieve this functionality.

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Thurrott © 2024 Thurrott LLC