Je suis en train de créer un assembly .NET qui sera enregistré pour COM afin qu'il puisse être référencé par Microsoft Excel VBA. L'assembly fait référence à un assembly .NET tiers (qui contient des classes utiles) qui ne se trouve pas dans le GAC. Toutefois, le déploiement de mon assembly pose problème car le chemin d'accès à l'assembly tiers est pas toujours au même endroit (cela dépend de la localisation de l'utilisateur ainsi que de la date d'installation de l'assembly tiers). Cela signifie que lors du déploiement de mon assembly (en utilisant REGASM), en fonction du système sur lequel il est installé, REGASM tombera parfois car il ne peut pas trouver la dépendance de mon assembly sur l'assembly tiers.Plusieurs chemins de recherche pour les assemblages ne se trouvant pas dans le GAC lors de l'utilisation de REGASM & COM
Idéalement, je voudrais utiliser une liaison anticipée dans mon assembly, mais si je fais cela et que le chemin vers l'assembly tiers n'est pas la même que la référence dans Visual Studio, alors REGASM échouera. Je réalise que "Copy Local" (en VS) résoudrait cela, mais comme l'assembly tiers est parfois corrigé, je ne souhaite pas vraiment en garder une version obsolète dans le même dossier que mon assemblée.
Y a-t-il un moyen de contourner cela afin de ne pas avoir à utiliser "Copy Local"? Je suppose que je pourrais utiliser une sorte de charge dynamique de l'assembly tiers, mais pourrait encore utiliser une liaison anticipée? (et le REGASM fonctionnerait-il?)