Pb Activex dans un déploiement VB/Access

Cybiot Messages postés 10 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 25 avril 2006 - 8 janv. 2003 à 13:45
PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007 - 9 janv. 2003 à 19:59
Bonjour,

J'au un prog VB6 qui utilise une base de donné Access 2000 et qui fonctionne bien (y compris en compilé ) sur mon poste de devellopement ( ou j'ai VB6 et Access 2000 d'installé )

Par contre lorsque j'installe mon programmme (via un package de déploiement VB) sur un autre poste qui n'a pas VB ni Access, j'ai un message d'erreur "Activex ne peut créer l'objet". L'erreur est provoqué par le code suivant:

Set SaisieDB = CreateObject("Access.Application")

Merci d'avance pour vos suggestions...

Cybiot

4 réponses

PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007
8 janv. 2003 à 13:47
Tu ne peux pas manipuler les objets access (Set SaisieDB = CreateObject("Access.Application")) si le poste cible n'a pas access d'installé.
@+
0
Cybiot Messages postés 10 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 25 avril 2006
9 janv. 2003 à 16:01
merci pour ton info (qui est exacte )

Cependant ( pour information ) j'ai trouvé le moyen de contourner le problème en remplaçant l'objet

Set SaisieDB = CreateObject("Access.Application")

par :

SaisieDB As ADODB.Connection
Set SaisieDB = New ADODB.Connection
SaisieDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & gsDbPath
SaisieDB.Open
...
( la syntaxe d'execution de requette change aussi sensiblement, mais elle est documentée dans le MSDN )

Cybiot
0
Cybiot Messages postés 10 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 25 avril 2006
9 janv. 2003 à 16:05
merci pour ton info (qui est exacte )

Cependant ( pour information ) j'ai trouvé le moyen de contourner le problème en remplaçant l'objet

Set SaisieDB = CreateObject("Access.Application")

par :

Dim SaisieDB As ADODB.Connection
Set SaisieDB = New ADODB.Connection
SaisieDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = base.mdb"
SaisieDB.Open
...
( la syntaxe d'execution de requette change aussi sensiblement, mais elle est documentée dans le MSDN )

Cybiot
0
PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007
9 janv. 2003 à 19:59
Si tu voulais seulement accéder à la base, il est clair qu'il est préférable d'utiliser les méthodes d'accès aux données comme ADO que tu utilises maintenant. je pensais que tu accéeder aux objets accès pour manipuler les états access ou les requetes stockées dans la base.
@+
0
Rejoignez-nous