IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

R/W dans base de donnée access quelque soit le chemin d'installation de l'application [Débutant]


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 32
    Points : 27
    Points
    27
    Par défaut R/W dans base de donnée access quelque soit le chemin d'installation de l'application
    Bonjour, je reprend une ancienne application que j'avais laissé de coté.

    Application avec base Access, contenu dans le dossier (G:\Mes_projets\Monarques). Lors de mes tests l'écriture et la lecture, l'enregistrement ne posent pas de soucie.

    Mais, lors du déploiement & installation, (sur un autre disque E:\Monarques...) l'écriture et la lecture se fonts toujours sur le fichier Access de mon dossier de développement (G:\Mes_projets\Monarques). Malgré la présence de la base Access.

    Pour me connecter a cette base j'utilise des Bindingsource, Dataset et tableadaptater.


    Pourriez-vous me donner une piste de réflexion

    Bonn fin de journées.

    Cordialement.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 364
    Points : 1 989
    Points
    1 989
    Par défaut
    c'est lié à ta chaine de connexion à la base access: tu dis quelque part en dur que ta base se trouve dans G:\Mes_projets\Monarques.
    donc soit changer en dur ce chemin (pas la meilleur solution), ou indiquer que la base est dans le chemin de l'application si c'est toujours le cas (My.Application.Info.DirectoryPath par exemple) ou assicié un fichier de configuration contenant l'emplacement de la base.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Février 2013
    Messages : 25
    Points : 19
    Points
    19
    Par défaut
    Personnellement, je mets la base dans le dossier de l'application. Exemple ! C:\user\nomUtilisateur\sources\repos\nomApplication\taBase.db

    La chaine connexion devient par exemple "Data Source=|DataDirectory|\taBase.db"
    |DataDirectory| renvoie automatiquement dans le répertoire de l'application.

    Puis j'utilise l'extension gratuite " Microsoft Visual Studio Installer Projects 2022 "
    On ajoute la sortie plus le fichier de basse de données.
    Il y a de nombreux tutos en anglais sur cette extension sur YouTube.

    Je ne sais pas si c'est la meilleure solution, mais cela fonctionne pour moi.
    Je peux installer mon logiciel sur un autre ordinateur et la base y est copiée au bon endroit.

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 802
    Points : 5 597
    Points
    5 597
    Par défaut
    Citation Envoyé par Patrick-06 Voir le message
    Personnellement, je mets la base dans le dossier de l'application.
    Il est déconseillé de placer les bases dans le dossier de l'application depuis 2007 (notamment à cause de l'UAC).
    Le bon endroit si la base est locale comme ici, c'est C:\Users\{USERNAME}\AppData\Roaming\{ApplicationName}\.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     string path = Path.Combine(Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData), "Monarques");
     Console.WriteLine(path);

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 364
    Points : 1 989
    Points
    1 989
    Par défaut
    Ce qui est vrai si c'est installé "classiquement" dans les dossiers ProgramFiles/(x86)

    Si c'est pour une application "portable", c'est mieux de le mettre à côté de l'application.

    Et je rajouterai que rajouter un menu dans ton application pour spécifier le chemin de la base (et donc stocker l'info dans le fichier de config de l'appli) serait plus flexible.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Octobre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2006
    Messages : 711
    Points : 1 054
    Points
    1 054
    Par défaut
    Pour moi çà dépend.

    Si c'est une application et une base commune à tous les utilisateurs, elle peut être stocké dans le répertoire spécifique à l'application dans ProgramData
    Si c'est une base et/ou une application liée à l'utilisateur, alors oui, comme Popo l'indique elle doit figurer dans C:\Users\{USERNAME}\AppData\Roaming\{ApplicationName}\

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 32
    Points : 27
    Points
    27
    Par défaut Probleme de chemin de connection lors de l'installation
    Bonjour A tous,

    Tout d'abord merci à tous ceux qui on pris un peu de leur temps pour étudier mon problème et d'avoir proposé plusieurs pistes.

    Mon problème est enfin résolu, de la façon la plus simple, si simple que j'ai du mal à comprendre comment je n'y avait pas pensé avant.

    En fait, le fait de reconstruire la connexion et de répondre "OUI" lorsque l'on me demande de copier la base vers le répertoire de sortie place la base Access dans le dossier debug. Lors de la création de l'exe tous les fichier son présent. Le reste suit.

    Encore merci, et je garde de coté tous vos pistes.

    Cordialement.

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 364
    Points : 1 989
    Points
    1 989
    Par défaut
    Attention aux droits d'écriture. Mais comme ça a été évoqué, Windows va probablement en faire une copie dans c:\users\[utilisateur)\appdata\roaming\virtual Store\.... si le programme est déployé dans les programfiles.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET] ajout dans base de donné access via vb : erreur dans syntaxe
    Par hama2am dans le forum Débuter
    Réponses: 1
    Dernier message: 06/04/2019, 00h18
  2. Sécuriser une base de donne access
    Par jeha dans le forum Sécurité
    Réponses: 8
    Dernier message: 06/10/2006, 11h28
  3. c++ et base de donné access
    Par devlopassion dans le forum C++
    Réponses: 3
    Dernier message: 28/08/2006, 17h01
  4. connection a une base de donné access
    Par akimmm dans le forum MFC
    Réponses: 5
    Dernier message: 19/11/2005, 01h08
  5. [VB.NET]Champ image dans base de donnée access
    Par dankes dans le forum Windows Forms
    Réponses: 10
    Dernier message: 06/10/2005, 16h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo