Problème de connexion à ma base de données (base introuvable)

Résolu
davidguillon Messages postés 81 Date d'inscription lundi 9 août 2004 Statut Membre Dernière intervention 15 septembre 2009 - 15 avril 2007 à 14:26
davidguillon Messages postés 81 Date d'inscription lundi 9 août 2004 Statut Membre Dernière intervention 15 septembre 2009 - 15 avril 2007 à 15:09
B'jour!

Je doute que mon erreur soit compliquée à résoudre mais... je n'y arrive pas.

Lorsque je crée un Setup pour mon application, je peux sans soucis installer puis lancer mon application lorsque je j'utilise "lancer l'application maintenant" à la fin de l'installation.

Mais si je ferme l'application et que je veux la lancer depuis le raccourci du bureau OU par le raccourci dans Démarrer/Programmes ben ça ne fonctionne pas (il me dit qu'il ne trouve pas la base de données sur le bureau ou dans démarrer programme selon de là où je le lance).

Mais ça fonctionne si je lance mon application depuis ProgramFiles/MonApplication vu que la base de données est dans ce dossier là.

Donc finalement mon application n'est pas capable d'aller chercher la base de données au bon endroit, elle va la chercher dans le même dossier que celui où se trouve le raccourci.

Ce que j'explique me semble un poil complexe mais je serai capable de détailler plus précisément si vous en avez besoin.

Voilà la portion de code qui me semble concernée:

Private Sub Form_Load()

    'Connection par le fournisseur Microsoft.Jet.OLEDB
    Set cnCinema = New ADODB.Connection

   
    cnCinema.Provider = "XSDASQL" 'par défaut
    cnCinema.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=basedonnees.mdb"
    cnCinema.Open
   
    'Définition et ouverture du recordset
    Set recFilm = New Recordset

    Set recFilm.ActiveConnection = cnCinema
  
    Call listerFilmsParNom
   
End Sub

Voilà, merci beaucoup de votre aide!

David

2 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
15 avril 2007 à 14:32
2 solutions :
- soit tu modifie la chaine de connection en lui indiquant le chemin complet d'accès à la base en fonction du répertoire d'installation de l'appli (voir App.Path pour récupérer l'info) :
cnCinema.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "\basedonnees.mdb"

- soit tu modifie ton racourci en lui indiquant dans la zone "Demarrer en", le chemin d'install de l'appli

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
3
davidguillon Messages postés 81 Date d'inscription lundi 9 août 2004 Statut Membre Dernière intervention 15 septembre 2009
15 avril 2007 à 15:09
Super! Merci beaucoup ça fonctionne sans problème :D J'avais bien essayé une manip du genre mais je n'avais pas mis les guillemets au bon endroit :)

Merci encore je valide la réponse :)

David
0
Rejoignez-nous