Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Common Controls-biblioteket är nu isolerat i MFC, vilket gör att olika moduler (till exempel användar-DLL:er) kan använda olika versioner av Common Controls-biblioteket genom att ange versionen i sina manifest.
Ett MFC-program (eller användarkod som anropas av MFC) anropar Common Controls-biblioteks-API:er via omslutningsfunktioner med namnet AfxFunctionName, där FunctionName är namnet på ett Common Controls-API. Dessa omslutningsfunktioner definieras i afxcomctl32.h och afxcomctl32.inl.
Du kan använda makron AFX_COMCTL32_IF_EXISTS och AFX_COMCTL32_IF_EXISTS2 (definierade i afxcomctl32.h) för att avgöra om Common Controls-biblioteket implementerar ett visst API i stället för att anropa GetProcAddress.
Tekniskt sett gör du anrop till Common Controls-biblioteks-API:er via en omslutningsklass CComCtlWrapper (definieras i afxcomctl32.h).
CComCtlWrapper ansvarar även för lastning och avlastning av comctl32.dll. MFC-modultillståndet innehåller en pekare till en instans av CComCtlWrapper. Du kan komma åt omslutningsklassen med hjälp av makrot afxComCtlWrapper .
Observera att anrop av Common Controls API direkt (inte använder MFC-omslutningsfunktionerna) från ett MFC-program eller användar-DLL fungerar i de flesta fall, eftersom MFC-programmet eller användar-DLL är bundet till det Common Controls-bibliotek som begärdes i manifestet). Själva MFC-koden måste dock använda omslutningen, eftersom MFC-kod kan anropas från användar-DLL:er med olika common controls-biblioteksversioner.