Bonjour à tous,
J’ai développé une application en vb6 utilisant une base de données Access. Lors de son déploiement sur certains postes, la connexion à la BDD échoue. Cela ne fonctionne pas du tout avec windows 98, mais fonctionne un peu mieux avec Win98 SE. Le problème se pose parfois même sur certains ordinateurs équipés de Windows XP ou Vista ! Voici le code utilisé pour la connexion à la BDD :
Set My_Connection = New ADODB.Connection
My_Connection.ConnectionTimeout = 15 My_Connection.CommandTimeout = 30
If My_Connection.State = adStateOpen Then
My_Connection.Close
End If
My_Connection.Open Str_connexion
While (My_Connection.State = adStateConnecting)
DoEvents
Wend
Pour le déploiement de l’application, j’utilise « Inno Setup Compiler 5.1.6 », et je doute un peu que c’est la source du problème, mais je ne vois d’où ça peut venir. J’utilise bien MDAC. Voici le contenu du fichier de déploiement : [Tasks]
Name: MDAC; Description: Microsoft Data &Access Components; GroupDescription: Compléments:; Flags: checkedonce restart; MinVersion: 4.0,4.0; OnlyBelowVersion: 0,5.0
Si vous avez une idée de la source du problème je suis preneur car je suis un peu à cours d'idées en ce moment.
J'aimerai bien pouvoir supprimer MDAC pour le remplacer par des fichiers moins lourds, mais ce n'est pas une priorité.
Merci de jeter un coup d'oeil également sur le fichier de déploiement pour voir si ça vous semble correct.
Salut
Tu nous donnes le code, tu nous dis que ça ne marche pas, mais aucune info sur l'erreur en question (n°, libellé, ligne qui bug supposément).
Ceci dit, le « Microsoft Access Driver » utilise-t-il vraiment le MDAC ou bien juste le Jet Engine d'Access (qui n'est pas mis à jour par le MDAC je crois) ?
T'as raison, j’ai oublié l’essentiel. J’obtiens le message d’erreur suivant : « Le composant ActiveX ne peut créer l'objet » lorsque l’instruction « Set My_Connection = New ADODB.Connection » est exécutée.
Ça y est play2001, tu vas nous énerver le zeb Pense à ses artères, faut le ménager, il peut encore servir
Sinon, si tu as MS Office sur un poste de travail où tu as constaté l'erreur, ouvre un classeur Excel, va dans l'éditeur de code (ALT+F11) et dans le menu Outils/Références.
Là dis nous si tu trouves « Microsoft Activex Data Objects 2.x Library » et si tu peux l'exploiter.
Logiquement si ton code précédent plante sur la création de ADODB, ça devrait se voir sous Excel.
Vérifie que la version sur ce poste correspond à la version de ton kit de déploiement.