2010-07-14 12 views
1

Supposons que nous ayons plusieurs bibliothèques (DLL) dont nous souhaitons utiliser les fonctionnalités dans une application et que nous souhaitons les utiliser comme une DLL unique.VC++ fusionner plusieurs DLL COM en une seule

Est-il possible de fusionner les DLL en une seule, avec toutes les fonctionnalités qui s'y trouvent? Je ne regarde pas la possibilité d'écrire un emballage.

EDIT:

J'ai revisité le problème. Maintenant tout ce que je veux faire est de mettre tous les projets sous une solution et obtenir une seule DLL comme sortie au lieu de chaque projet ayant sa sortie indépendante. Est-ce possible?

+0

Possible duplicate - http://stackoverflow.com/questions/145499/merge-several-native-dlls-into-one-dll – Motti

Répondre

1

Vous ne pouvez pas littéralement fusionner plusieurs fichiers .dll compilés en un. Le mieux est de placer tous les fichiers dans un seul projet et de les recompiler en une seule bibliothèque. Vous aurez probablement des conflits que vous devrez résoudre manuellement.

Si vous avez vraiment plusieurs serveurs COM in-proc, vous devrez également fusionner les données qui facilitent les usines de classe et l'enregistrement COM - vous devrez le faire manuellement.

+0

C'est ce dont j'avais peur .. espérais contre l'espoir que je vais avoir un meilleure option ... –

+0

@ Whiskey-Tango-Foxtrot: Oui, je comprends. Mais vraiment "fusion" de plusieurs fichiers .dll en un seul est presque la même que la fusion de plusieurs fichiers .exe en un seul - ne peut tout simplement pas être fait. Cependant la recompilation n'est probablement pas si difficile, n'essayez pas d'aller dans le sens des bibliothèques statiques. – sharptooth

Questions connexes