J'ai un projet Web, un projet de bibliothèque C# et un projet d'installation Web dans Visual Studio 2005. Le projet Web doit avoir la bibliothèque C# doit être enregistrée dans le GAC. C'est simple, il suffit d'ajouter le dossier GAC au projet d'installation et de supprimer la sortie principale de la bibliothèque C# là-bas. La bibliothèque C# doit également être enregistrée pour COM interop. Je clique sur sélectionner la sortie principale dans le dossier GAC et change la propriété Register en vsdrpCOM. Je compile le projet d'installation et l'exécute mais la DLL n'est jamais enregistrée pour COM.Enregistrement COM et GAC
Ce n'est pas vraiment une surprise pour moi. J'ai toujours dû ajouter une classe d'installateur qui avait une action personnalisée qui utilisait RegistrationServices.RegisterAssembly pour enregistrer correctement mes DLL pour COM. Donc j'applique cette solution de contournement que j'ai acceptée depuis des années à ma situation. Maintenant, je trouve que les actions personnalisées affectées à la sortie principale dans le dossier GAC d'un projet d'installation empêchent même le projet d'installation de générer.
J'ai toujours eu l'impression de pirater les fichiers pour que .NET et COM puissent être utilisés avec succès dans les projets de configuration et de déploiement. Quelle est la bonne façon de résoudre mon problème?