Izolace společné prvky knihovny MFC
Knihovny běžné ovládací prvky nyní samostatný v rámci MFC umožňuje různé moduly (například uživatel knihovny DLL) se používají různé verze knihovny běžné ovládací prvky určením verze v jejich manifestů.
Aplikace MFC (nebo kód uživatele volá MFC) provádí volání knihovny běžné ovládací prvky rozhraní API prostřednictvím funkcí obálky s názvem Afxtj, kde tj je název společné rozhraní API řídí.Tyto funkce obálky jsou definovány v afxcomctl32.h a afxcomctl32.inl.
Můžete použít AFX_COMCTL32_IF_EXISTS a AFX_COMCTL32_IF_EXISTS2 určit, zda prvky společné knihovny implementuje určitých rozhraní API namísto volací makra (definovaná v afxcomctl32.h) GetProcAddress.
Technicky, provádět volání API knihovny společné prvky prostřednictvím wrapper třídu CComCtlWrapper (definované v afxcomctl32.h).CComCtlWrapperje také odpovědné za nakládku a vykládku souboru Comctl32.dll.Stav modulu MFC obsahuje ukazatel na instanci CComCtlWrapper.Přístup pomocí třídy obálky afxComCtlWrapper makro.
Všimněte si, že volací společné rozhraní API řídí přímo (není pomocí funkce souhrnného MFC) z MFC aplikace nebo uživatel knihovny DLL bude pracovat ve většině případů, protože je vázán MFC aplikace nebo uživatel knihovny DLL vyžádány v manifestu sestavení knihovny běžné ovládací prvky).Samotného kódu MFC má však použití obalů, protože MFC kód může být volána z knihoven DLL pro uživatele s různými verzemi knihovny běžné ovládací prvky.