2010-12-08 5 views
0

Je ne suis pas capable de se connecter depuis mon service Windows au serveur SQLbibliothèque WCF dans Windows Services

Exception: Le service ne peut pas être démarré. System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]: La connexion a échoué pour l'utilisateur 'LOBAANSOFTWARES \ LBS-PC-19 $'. (Défaut Détail est égal à un ExceptionDetail, probablement créé par IncludeExceptionDetailInFaults = true, dont la valeur est: System.Data.SqlClient.SqlException: Échec de la connexion pour l'utilisateur 'LOBAANSOFTWARES \ LBS-PC-19 $. à System.Data.SqlClient.SqlInternalConnection.OnError (SqlException exception, Boolean breakConnection) à System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() à System.Data.SqlClient.TdsParser.Run (runBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) à System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin (Boolean enlistOK) à System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin (ServerInfo serverInfo, String newPassword, booléenne ignoreSniOpenTimeout, délai d'attente de TimeoutTimer, SqlConnection owningObject) à System.Data.SqlClient.SqlInternalConnecti ...

leur est un autre service de départ pour résoudre cette solution

+0

Si vous publiez code ou XML, ** S'il vous plaît ** mettre en évidence les lignes dans l'éditeur de texte et cliquez sur sur le "code" bouton (101 010) sur la barre d'outils de l'éditeur pour bien le mettre en forme et la syntaxe le mettre en évidence! Idem pour les messages d'erreur - s'il vous plaît utilisez la clé "blockquote" (") pour ceux !! –

Répondre

0

Avez-vous vérifié la sécurité de votre base de données pour vous assurer que l'utilisateur existe et dispose des droits suffisants pour se connecter? Le service Windows utilise-t-il le mot de passe correct pour le compte d'utilisateur qu'il exécute?

1

Le message d'erreur est assez clair:

Échec de la connexion pour l'utilisateur 'LOBAANSOFTWARES \ LBS-PC-19 $.

Cet utilisateur (nom de la machine sur laquelle votre service s'exécute) ne dispose d'aucune autorisation pour se connecter à SQL Server.

Vous pouvez:

  • donnent que les droits de l'utilisateur de se connecter à SQL Server et la base de données appropriée (s)
  • ont la course de service sous un compte utilisateur qui a les droits à SQL Server
  • définir une chaîne de connexion spécifique dans votre application de service NT pour utiliser un utilisateur de se connecter à SQL Server

votre chaîne de connexion ressemble probablement quelque chose comme:

server=(your server name);database=YourDatabase;Integrated Security=SSPI 

Cette tentative de connexion au serveur SQL avec l'utilisateur qui exécute le service - par défaut le compte d'ordinateur de votre machine.

Vous pouvez modifier votre chaîne de connexion à utiliser un utilisateur spécifique SQL Server que vous avez créé à la place:

server=(your server name);database=YourDatabase;User ID=YourNewUser;Pwd=Top$Secret 
+0

ici j'utilise le service wcf pour connecter le serveur SQL il fonctionne très bien avec l'application console et l'application web mais quand j'héberge ce service wcf dans service Windows puis appelez la fonction wcf puis j'ai eu ce problème et leur est tous les droits à ma machine pour se connecter SQL Server – Vikram

+0

en fait je ne peux pas démarrer mon service Windows ici je me connecte au serveur SQL en tant qu'authentification Windows – Vikram

+0

@ Vikram: oui, bien sûr - si vous exécutez une application console, alors elle fonctionne ** comme vous ** - dans votre contexte utilisateur.Cet utilisateur a probablement l'autorisation de se connecter à SQL Server.Essayez d'arrêter votre service, changer le compte le le service s'exécute sous vous-même, et réessayez - je suis convaincu que votre service ** peut ** se connecter à SQL Server car il fonctionne sous ** votre ** contexte utilisateur –