2009-11-11 10 views
0

Lors de la mise en œuvre de mon propre IFilter, j'ai constaté que certains consommateurs auraient probablement besoin de l'assemblage. C'est ils QueryInterface() l'interface IMarshal de mon objet.Comment implémenter la mise en place dans un serveur COM VC++ ATL?

Le proxy/stubs de MIDL ne peut pas être utilisé - MIDL ne compile pas le fichier filter.idl - ce dernier utilise des structures personnalisées et MIDL ne sait pas quoi en faire. Donc, il semble que je devrais mettre en œuvre le rassemblement par moi-même.

Où puis-je trouver un guide et des exemples sur la façon de mettre en œuvre le marshaling?

+0

La langue IDL ne disposent d'installations pour décrire les structures personnalisées afin qu'ils puissent escortées. Avant de vous lancer dans la mise en œuvre de notre marshalling, vous devez vérifier que vous ne pouvez pas décrire ces structures personnalisées dans l'IDL. –

+0

J'ai regardé attentivement. Il s'avère que le problème est OLE marshaller qui implémente le typelib marshalling ne peut pas fonctionner avec des structures. Donc j'ai au moins besoin d'un proxy/stub marshalling. – sharptooth

Répondre