Chemin d'accees a une base de donne sur le reseau

mmaouloud Messages postés 1 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 6 février 2007 - 6 févr. 2007 à 17:48
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 8 févr. 2007 à 09:32
salut tous le monde.
j'ai un probleme si quelq'un peut m'aider.
j'ai developpee une application sur Visuel Basic 6.0, et je travail sur une Base de Donnee Access ,
l'application est executable sur mon PC,
mnt je veux juste une fonction qui me permet de lire le chemin appartir dans un fichier *.txt ou *.ini
pour que j'ai puisse change le chemin sans revenir a la code source....
dans l'attente de votre reponse mon travail est ploqué
merciiiii.
a+++

4 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
6 févr. 2007 à 18:12
Salut,

Voici un bout de code qui peut-être te servir pour lire un fichier txt :

'Variables
 Dim lFileC1 As Long
 Dim fichier1 As String
 Dim MyString1

'Chemin du fichier
  fichier1 = ("C:\toto.txt")
   'Demande un numéro de fichier non utiliser
     lFileC1 = FreeFile
 
'Ouvre le fichier en écriture seulement
 Open fichier1 For Input As #lFileC1
  Do While Not EOF(1)
   Input #1, MyString1
    'Condition si Mystring1 = ""
      If MyString1 = "" Then
       GoTo suivant
        Else
         Ta variable = le text lu dans le fichier texte
      End If
 
suivant:
  Loop
 
'Ferme le fichier(important)
 Close #lFileC1

Bon je me sert de ce code pour remplir un comboBox, à toi de faire la petite modife...quand tu rencontre fin fichier


A+


Exploreur


 


 
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
6 févr. 2007 à 18:44
Re,

Je viens de corriger le code ci-dessous, car dans ton cas tu n'a pas besoin d'une boucle Do while :

'Variables
 Dim lFileC1 As Long
 Dim fichier1 As String
 Dim MyString1 as String
 Dim CheminBase As String    
 
'Chemin du fichier
  fichier1 = (C:\Toto.txt")

'Demande un numéro de fichier non utiliser
 lFileC1 = FreeFile
 
'Ouvre le fichier 
 Open fichier1 For Input As #lFileC1
  Input #1, MyString1
  CheminBase = MyString1 << Récupère dans le fichier ton chemin base
 
'Ferme le fichier(important)
 Close #lFileC1

Voilà, maitenant tu n'a plus qu'a l'utiliser, en l'adaptant à ton aise...
Mais faire attention avec les fichiers texte, dans le cas ou un utilisateur marque n'importe quoi dedans ton prog va planter...
Un conseil que l'on m'a donné, déclares plutôt des constantes, ainsi tu ne modifira que celle-ci dans le cas ou ta base sur le réseau change de lecteur..
Dans un module :

Public Const CheminAppli = "R:\Toto\Tata\Tutu\Base.mdb"

A+
Exploreur
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 févr. 2007 à 19:08
Salut
Petite correction.
Si tu déclares une constante pour désigner ton chemin, elle ne sera pas modiable dynamiquement dans le code (d'où son appellation de constante, d'ailleurs)
La lecture du chemin dans ton fichier : Ok, utilise la technique de Exploreur.
Seule amélioration : Mettre le fichier 'paramètress' dans le même répertoire que ton appli, sinon, tu vas avoir des bouts de fichier partout :
Fichier1 = App.Path & "\Toto.txt"
Ensuite, avant d'utiliser la chaine récupérée, il vaut mieux tester l'existence du fichier avant de vouloir l'utiliser. Un simple DIR devrait suffire.
Sinon, bien gérer les erreurs dans les procédures.

Une fois que tu auras le chemin de la DB dans CheminBase, il te suffit de modifier laConnectionString de ta DB.
Exemple :
maDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                                         "Data Source=" & CheminBase & _
                                         ";Persist Security Info=False"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
8 févr. 2007 à 09:32
Salut mmaouloud ,

Je reviens vers toi, juste pour "savoir" si la réponse de Jack et moi même(Casy si tu passes dans le coin...lol), si cela te convenais. Il serai sympa de ta part, même si tu ne valide pas les réponses, de donner au moins un retour sur ton problème...
Cela fait toujours plaisir de savoir qu l'on a pu aider une personne...

A+
Exploreur
0
Rejoignez-nous