Nous avons un package SSIS 2005 installé sur un serveur central et appelé à partir de plusieurs emplacements. Ce package utilise une tâche de script pour appeler une DLL .NET que j'ai écrite en C# et installée dans le GAC sur le serveur central. Lorsque j'appelle le package SSIS à partir du serveur sur lequel le package est installé, tout va bien.L'appel qui utilise une DLL avec SQL Server Agent requiert l'installation de la DLL sur l'ordinateur appelant et non sur l'ordinateur sur lequel le package est installé.
Lorsque j'appelle le package à partir d'un serveur distant à l'aide de SQL Server Agent, le travail échoue indiquant qu'il ne peut pas trouver la DLL.
Juste pour tester ce qui se passe, j'ai installé la DLL sur le serveur distant et le package a réussi. Il semble donc que même si le paquet est installé sur une machine, quand il est appelé par un autre utilisant SQL Server agend, il s'exécute sur la machine appelante et c'est la machine appelante qui doit satisfaire toutes les dépendances.
Ce paquet va être appelé à partir de dizaines de serveurs, dont je n'ai pas le contrôle.
Existe-t-il un moyen pour installer, configurer, compiler, appeler ou faire quelque chose à la façon dont ce paquet est construit ou exécuté pour qu'il appelle la DLL du GAC sur la machine où le paquet est installée?