Re-utilisation d'une chaîne de connexion dans une autre Form [Résolu]

Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
- - Dernière réponse : Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
- 5 janv. 2012 à 15:44
Bonjour,

J'aurais une question qui va peut être vous paraitre bête. A partir d'une chaine de connexion dans mon programme comme :

Dim MaConnection As New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=C:\MaBado.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True")


Peut on utiliser cette chaîne dans les autres Forms de mon programme ? car pour chaque Form je fais un copier coller de cette chaîne de connexion. Il y a peut être plus optimisé ?
Car je souhaiterais laisser le choix à l'utilisateur pour la BDD à attaquer, et si je fais ca, je dois demander a l'utilisateur le choix a chaque nouvelle Form qui va s'ouvrir.

Cordialement
Afficher la suite 

12 réponses

Meilleure réponse
Messages postés
781
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
30 octobre 2013
3
3
Merci
Je pense qu'il faut que tu ajoutes un module et que tu déclare ta variable en "global". Ansis tous les from pourrons voir et modifier la variable.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 191 internautes nous ont dit merci ce mois-ci

Commenter la réponse de 4u4me4us
Messages postés
781
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
30 octobre 2013
3
3
Merci
Oups !! Je voulais dir Public ChaineDeCnx As String = "Machainedeconnexion"

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 191 internautes nous ont dit merci ce mois-ci

Commenter la réponse de 4u4me4us
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
Merci, donc ce n'est pas une "erreur" de faire copier colelr dans toutes mes forms

Car je ne comprends pas ta solution avec le global.

Merci quand même pour ton aide
Commenter la réponse de Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
AddHandler .MouseClick, AddressOf e.ToString
Fonctionne

Ton code est très intéressant et je te remercie beaucoup mais existe il un propriété pour que les boutons ne sortent pas de la forme et qu'ils aillent a la ligne ?

Encore un grand merci à toi qui a vraiment compris ce que je voulais faire !
Commenter la réponse de Moundir76
Messages postés
781
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
30 octobre 2013
3
0
Merci
J'ai peut-être répondu à coté sorry. Tu dis "Peut on utiliser cette chaîne dans les autres Forms de mon programme ? " Donc tu veux pouvoir te connecter via des autre form?.

Si oui alors utiliser un module et mais ton code de connection dedans.

Ansi toues les forms pourrons appeler la fonction ou sub de connexion.

"je souhaiterais laisser le choix à l'utilisateur pour la BDD à attaquer" tu adaptera le paramètre de ta fonction de connexion au choix de l'utilisateur.

Si par la suite la MaConnection doit être modifier ou utiliser utiliser sur d'autre Form alors déclare là en global ( ou externe je rappelle en .NET je sais plus trop).
Commenter la réponse de 4u4me4us
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
Sincèrement désolé, j'ai répondu au mauvais topic ...
Merci pour ton astuce, je n'ai jamais utilisé de module donc je vais essayer de me renseigner avec le MSDN.
Tu as bien compris, mon but est d'avoir la chaine de connexion a un endroit pour éviter de copier coller dans toutes les formes, et ainsi si un jour on change l'emplacement de la chaîne de connexion alors toutes les Forms auront la nouvelle chaine.

Merci je te dis si j'ai réussi !
Commenter la réponse de Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
Voila, afin de remplacer la chaine de connexion, j'ai créée un module dans lequel j'ai declaré un Const C as String ="Machainedeconnexion.............."

Et ainsi dans chaque forme j'utilise ma variable C.

Je ne sais pas si Const est très approprié mais je n'ai trouvé que ça.

Merci !
Commenter la réponse de Moundir76
Messages postés
781
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
30 octobre 2013
3
0
Merci
Non Const n'est pas approprié pour ton cas. Comme tu veux que C soit visible dans toutes les form tu dois utiliser global (ou externe ou public). Là C n'est visible que dans le module. Une fois que tu aura mis la bonne déclaration fais de MsgBox sur les form et regarde si elle te retourne toutes la même valeur.
Commenter la réponse de 4u4me4us
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
Avec
Public Const ChaineDeCnx As String = "Machainedeconnexion............"


J'arrive bien a accéder a ma variable dans mes autres formes. C'est au niveau du Const que je ne sais pas quoi mettre, j'ai mis ça en essayant plusieurs choses différentes proposées par VB
Commenter la réponse de Moundir76
Messages postés
781
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
30 octobre 2013
3
0
Merci
La ligne t'elle quelle dit que tout le monde peut lire "ChaineDeCnx" mais personne ne peut la modifier.

Donc tu fais mieux de mettre Public String ChaineDeCnx ansis tout le monde peut voir et modifier.
Commenter la réponse de 4u4me4us
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
MErci pour cette précision mais j'avais essayé avec String mais cela me souligne String et en remarque j'ai "Mot clé non valide en tant qu'identificateur" ...
Commenter la réponse de Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
0
Merci
Exact, je n'avais pas non plus vu l'inversion alors que je l'ecris 50 fois par jour lol

Un grand merci pour ton aide, maintenant je sais utiliser un module !
Commenter la réponse de Moundir76