IID_IAggregateFilterCondition {86228AA3-A736-4733-BD8A-10A83C69BF84}

The IAggregateFilterCondition methods are (as ordered in the virtual function table after the IUnknown methods):

Offset Method
0x0C AddFilterCondition
0x10 GetCount
0x14 GetAt

with prototypes:

HRESULT AddFilterCondition (IFilterCondition *);
HRESULT GetCount (UINT *);
HRESULT GetAt (INT, IFilterCondition **);

in which IFilterCondition is an undocumented interface.


The only known implementations are in SHELL32.DLL and PROPSYS.DLL from Windows Vista. Microsoft’s published symbol files confirm that the code is linked into both executables from the one library, named PROPSYS_SHELL32.LIB. The implementation in SHELL32 is the more public, most notably for being accessible through the exported functions SHCreateFilter and SHLoadFilterFromStream.


The IAggregateFilterCondition interface is implemented in the SHELL32.DLL version 6.00 from Windows Vista, and higher.