Bonjour à tous,
je suis nouveau sur le forum, ça fait 15 jours que je me suis mis au VB.NET pour développer une GPAO sur mesure pour la boite où je travaille. Je développe en VB2005 Express et base Sql Server 2005.
Le serveur Sql est hébergé sur mon poste de développement, mon appli tourne bien en local mais lorsque je la déploie sur le réseau, je reçois l'erreur suivante au premier appel de connexion au serveur Sql :
Message Win98 : COMException (0x80004005): [Microsoft][ODBC SQL Server Driver] Le client n'a pas pu établir la connexion
Message XP Pro : COMException (0x80004005): [Microsoft][ODBC SQL Server Driver] [DBNETLIB] Ce serveur SQL n'existe pas ou son accès est refusé
Je suis allé fouiner du côté des chaines de connexion, mais je suis perdu au niveau des technologies employées : ODBC, ADODB, OleDB, ...
J'ai choisi de passer par ADODB parce que je viens de l'ASP et du VBA et que c'est la méthode que j'utilisais jusqu'alors. D'autre part je trouve pratique le système des Recordset... Dernière chose : j'aimerais vraiment conserver cette logique d'objet Connection, Recordset, ... vu que l'appli est déjà bien avancée et que je me vois mal tout reprendre.
Donc, pour que vous puissiez m'aider je vous mets un extrait du code qui me sert à me connecter à mon serveur SQL :
Ce code s'exécute sans problème en local sur le poste qui héberge SQL Server, en revanche dès que j'ai exécute mon appli déployée sur un autre poste du réseau, j'ai les erreurs citées précédemment.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Dim Conn As ADODB.Connection Private Sub ConnectBD() 'Paramètres de connexion via ADODB Dim NomUtilisateur, MotDePasse, NomServeur, NomBaseDeDonnees As String NomUtilisateur = "sa" MotDePasse = "1123581321" NomServeur = "10.1.0.23\SQLEXPRESS" NomBaseDeDonnees = "GPAO" 'Instanciation de l'objet Connection Conn = New ADODB.Connection() 'Définition de la chaîne de connexion Conn.ConnectionString = "UID=" & NomUtilisateur & ";PWD=" & MotDePasse & ";" & "DRIVER={SQL Server};Server=" & NomServeur & ";Database=" & NomBaseDeDonnees & ";" 'Etablissement de la connexion Conn.Open() End Sub
J'ajoute pour finir que Sql Server est bien configuré pour accepté les connexions TCP/IP ou cannaux nommés, et que SQL Browser est actif aussi.
J'espère que vous saurez m'aider. N'hésitez pas s'il le faut à me demander plus de précisions sur mon environnement de travail.
Bob
Partager