1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| typedef ITechnic* (*DLL_TECHNIC_FUNC_TYPE)();
//chargement du plugin
HINSTANCE hDLL;
hDLL = LoadLibrary("chemin_dll");
if(hDLL == NULL)
{
//erreur loadLibrary;
}
else
{
DLL_TECHNIC_FUNC_TYPE callFunction;
callFunction = (DLL_TECHNIC_FUNC_TYPE) GetProcAddress(hDLL, _getMaClass);
if(callFunction == NULL)
{
//erreur GetProcAddress
FreeLibrary(hDLL);
}
else
{
MaClass *maClass= callFunction(); //tu recup la classe
maClass->getTrame(); //tu lit et enregistre ds maTrame
maClass->useTrame1(); //tu utilise cette trame avec tes fonctions
maClass->useTrame2();
delete maClass; //quand tu as finis, tu detruit l'objet
}
} |