Implémentation d’un distributeur de ressources COM+

Les étapes suivantes décrivent une procédure générale pour l’implémentation d’un distributeur de ressources COM+ :

  1. Choisissez le format RESTYPID qui classe la façon dont vos ressources diffèrent les unes des autres.

  2. Utilisez respectivement le fichier d’en-tête et la bibliothèque Mtxdm.h et Mtxdm.lib.

  3. Générez une DLL qui implémente l’interface IDispenserDriver et l’API que vous souhaitez exposer aux applications.

  4. Au démarrage (DllMain ou premier appel à l’API distributeur), appelez la fonction GetDispenserManager . Cela retourne un pointeur vers l’interface IDispenserManager du responsable du distributeur.

  5. Appelez IDispenserManager::RegisterDispenser, en passant un pointeur vers votre implémentation d’IDispenserDriver. Cela entraîne la création d’un détenteur (gestionnaire de regroupement) pour votre distributeur de ressources, puis le pointeur vers votre interface IHolder .

  6. Stockez ce pointeur pour pouvoir appeler IHolder::AllocResource et IHolder::FreeResource.

  7. Vous pouvez désormais (en réponse aux appels à votre API) effectuer des appels à AllocResource et FreeResource. AllocResource répond initialement en rappelant votre méthode CreateResource , mais les appels AllocResource ultérieurs sont serviceés à partir du pool croissant de ressources.

Concepts du distributeur de ressources COM+

Interfaces du distributeur de ressources COM+