L'application ne peut pas trouver Microsoft.SqlServer.Smo sur la machine SQL 2008
-
21-08-2019 - |
Question
J'ai le code qui utilise Microsoft.SqlServer.Management.Smo. (Construit dans Visual Studio 2005 SP1) Il fonctionne très bien sur SQL 2000 et SQL machine 2005. Mais quand il est exécuté sur la machine SQL 2008, il lance une exception:
System.IO.FileNotFoundException: Impossible de charger le fichier ou l'assembly 'Microsoft.SqlServer.Smo, Version = 9.0.242.0, Culture = neutral, PublicKeyToken = 89845dcd8080cc91' ou une de ses dépendances. Le système ne peut pas trouver le fichier spécifié. Nom du fichier: 'Microsoft.SqlServer.Smo, Version = 9.0.242.0, Culture = neutral, PublicKeyToken = 89845dcd8080cc91'
=== LOG: Cette liaison commence dans le contexte de charge par défaut. LOG: Aucun fichier de configuration de l'application trouvée. LOG: en utilisant le fichier de configuration de la machine à partir de C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ config \ machine.config. LOG: Référence post-politique: Microsoft.SqlServer.Smo, Version = 9.0.242.0, Culture = neutral, PublicKeyToken = 89845dcd8080cc91 LOG: Tentative de téléchargement nouveau fichier URL: /// C: / Documents and Settings / Automation / bureau / Debug / Microsoft.sqlserver.smo.dll. LOG: Tentative de téléchargement nouveau fichier URL: /// C: / Documents and Settings / Automation / bureau / Debug / Microsoft.SqlServer.Smo / Microsoft.sqlserver.smo.dll. LOG: Tentative de téléchargement nouveau fichier URL: /// C: / Documents and Settings / Automation / bureau / Debug / Microsoft.SqlServer.Smo.EXE. LOG: Tentative de téléchargement nouveau fichier URL: /// C:. / Documents and Settings / Automation / bureau / Debug / Microsoft.SqlServer.Smo / Microsoft.SqlServer.Smo.EXE
J'ai installé SQL 2005 pack Rétrocompatibilité (mise à jour pour SQL 2008) et objets de gestion SQL (Mise à jour pour SQL 2008)
Toutes les suggestions.
Je suis passé par SQL Server SMO se plaint de DLL manquante mais pas beaucoup d'une aide.
La solution
Je trouve la question. Je construisais le projet avec des références à SQL 2005 SDK DLLs. J'ai enlevé toutes les références et ajouté les références à nouveau (maintenant pointant vers SQL 2008 dll voir le post:
Autres conseils
Jetez un oeil à la section "Microsoft SQL Server 2008 Management Objects" de Microsoft SQL Server 2008 Feature pack, Avril 2009 (assurez-vous d'avoir SQL Server 2008 service pack 1 installé)
Je ne sais pas si cela a été résolu, mais il semble que l'affiche originale a la propriété « Version spécifique » « True » pour la dll.
Pour résoudre ce problème, sélectionnez la référence dans le dossier Références et définissez la propriété « version spécifique » true.
Microsoft a fait passer certaines fonctionnalités à Microsoft.SMO.Extended, mais c'est une question distincte