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 :

comment créer string public [Débutant]


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut comment créer string public
    Bonjour,
    Dans un sub j'ai crée une valeur string que j'aimerai utiliser dans un autre sub...
    Comment je peux faire ?

    Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    sub creerfichier()
    ...
    Dim nomfichier As String = "c:\repertoire\" & textbox1.Text & "-" & TextBox2.Text & TextBox3.Text & "-" & Now.ToString("dd.MM.yyyy-HHmmss") & ".txt"
    ...
    _________________________
    sub envoyermail()
    ...
    Dim item As New System.Net.Mail.Attachment(nomfichier)
    ...

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Par défaut
    en la passant en paramètre (plus propre) ou en la déclarant public

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    impossible de la déclarer public, la ligne n'est pas valide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim nomfichier As  public String = "c:\repertoire\" & textbox1.Text & "-" & TextBox2.Text & TextBox3.Text & "-" & Now.ToString("dd.MM.yyyy-HHmmss") & ".txt"
    (ca me souligne "public" et me dis que ca ne désigne pas un type.)

  4. #4
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    En fait, je crois qu'il faudrait que tu révises les bases du VB.NET (cfr le cours de M. Lasserre qui est en post-it).

    Pour déclarer une variable en visibilité publique, il faut écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public maVariable as String
    (par exemple pour une variable de type String.

    Dim est un synonyme de Private en fait. Le hic, c'est que je pense pas que l'on puisse déclarer une variable visibilité publique au sein d'une procédure ou fonction car cette variable cesse d'exister une fois la procédure ou fonction terminée.

    Tu dois donc sortir ta variable de ta fonction ou procédure.

  5. #5
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    J'ai aussi essayé ça mais ça ne passait pas non plus...

    Public n'est pas valide dans une déclaration de variable locale
    Je l'ai donc déclaré en dehors de sub, la ca marche mais la valeur prise ne prendra pas celle que je veux car c'est qu'a l'envoi du mail (dans ce cas juste avant) que le moment (heure, date..) doit être capturé..

    Au passage merci pour l'aide.

  6. #6
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Tu peux renommer ton fichier juste avant de l'envoyer par e-mail si tu as besoin qu'il soit nommé avec la date et l'heure du mail... Même si ce sera toujours un tout petit peu plus tôt que le mail.

  7. #7
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    le problème c'est qu'entre temps la personne devant le programme devra remplir des champs, si la variable prend la valeur de HH:mm:ss du lancement du programme, ce ne sera pas valable car il peux s'ecouler des heures avant qu'il clique sur envoyer...

    Mon but ici est de joindre en piece jointe le document texte qui portera comme nom l'heure exacte de creation au mail qui sera envoyé... d’où je dois retrouver exactement le nom du fichier qui sera a chaque fois différent...
    Le fichier texte quand a lui est obligatoire pour laisser une preuve d'envoi car il pourra être mit en commun entre le mail et la source d'envoi au moment venu.

  8. #8
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Quels sont "les étapes logiques" de ton programme ?

    Par exemple :

    - l'utilisateur ouvre le formulaire
    - l'utilisateur complète les champs
    - l'utilisateur clique sur le bouton de validation
    - le fichier est créé
    - le mail est envoyé

    Si tu suis cet ordre par exemple, cela ne pose pas de problème. Même si le point "le fichier est créé" prend un bout de temps, tu peux le renommer après l'avoir créer et avant de l'envoyer.

    Mais bon, je ne fais des suppositions. Il faudrait savoir ce que fait ton application.

  9. #9
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    c'est exactement ca.
    Je cherche a retrouver le nom du nom du fichier pour pouvoir le joindre correctement au mail dans la fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim item As New System.Net.Mail.Attachment(lieu et nom du fichier)
    du coup j'aimerai que la variable qui soit utiliser pour créer le fichier et le joindre soit la même et qu'elle soit crée au moment on l'on creer le fichier texte juste avant l'envoi du mail...

  10. #10
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Par défaut
    1 - Pourquoi tu veux qu'elle soit en publique, ne peux tu pas simplement la créer au moment d'envoi du mail ?

    2 - Qu'est-ce qui t'empêche de la déclarer publique et d'y ajouter l'heure seulement au moment d'envoyer le mail ?

  11. #11
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    1-je crée le document texte dans un autre sub que celui qui envoie le mail. Donc c'est pour ca que j'essaie d'etre sur de retrouver la meme valeur dans les 2 subs.

    2- Je sais pas, peut-etre mon niveau...?

  12. #12
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Ouais mais le souci, c'est le même qu'avec le Père Noël. Entre ce qu'on aimerait et ce qu'on reçoit, il y a souvent des différences ^^.

    Je reprends donc le cheminement logique j'ai proposé dans mon message précédent :

    - l'utilisateur ouvre le formulaire
    - l'utilisateur complète les champs
    - l'utilisateur clique sur le bouton de validation
    - le fichier est créé
    - le mail est envoyé

    Il va te falloir travailler sur l'avant dernier point. Si j'ai bien compris, ton problème est de savoir quel fichier tu dois joindre au mail qui doit être envoyé.

    Le plus simple selon moi est de créer 3 répertoires :
    - c:\[username]\mail
    - c:\[username]\archive
    - c:\[username]\error
    Où [username] est le nom de l'utilisateur qui utilise l'application. Tu peux bien les placer où tu veux, pas obligatoirement sur le disque C (attention qu'à partir de windows VISTA, certains répertoires du disque C sont protégés).

    Lorsque tu crées ton fichier, tu le places dans le répertoire mail. Dans ta procédure d'envoi de l'e-mail, tu fais une boucle sur les fichiers se trouvant dans le répertoire mail et tu les ajoutes en pièce jointe. Si l'envoi de l'e-mail réussi, tu déplaces les fichiers dans archives. Sinon, tu les mets dans error.

    De cette manière, ton application ne mélangera pas les fichiers de plusieurs utilisateurs s'ils sont plusieurs à utiliser ton application et ton utilisateur pourras créer plusieurs fichiers si nécessaire.

    Si tu n'as pas besoin de garder les fichiers envoyés dans tes archives, supprime les après l'envoi.

    POINT IMPORTANT :
    Tu dois veiller à introduire dans le nom de ton fichier un élément distinctif. Cela ne posera pas vraiment de problème à la création du fichier si ce n'est que si un fichier avec le même nom existe déjà, il sera écraser. Par contre, lors du déplacement dans archive ou error, si un fichier avec le même existe déjà, une exception sera levée.

    Voilà, j'espère avoir été clair ^^.

  13. #13
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    Je te remercie d'avoir prit ton temps pour m'expliquer comment je pourrai faire.

  14. #14
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Relis bien ce que j'ai expliqué. Tu n'as plus besoin de connaître le nom du fichier à joindre à ton e-mail.

    Si tu n'y vois pas clair après relecture, j'en remettrai une couche

  15. #15
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    c'est bon j'ai relu
    Je suis juste en train de saturer car j'y suis depuis des heures mais j'ai compris.
    Reste plus qu'a trouver comment joindre le contenu d'un répertoire a un mail ^^

  16. #16
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Citation Envoyé par griftou Voir le message
    Dans ta procédure d'envoi de l'e-mail, tu fais une boucle sur les fichiers se trouvant dans le répertoire mail et tu les ajoutes en pièce jointe.

  17. #17
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2011
    Messages : 115
    Par défaut
    au moins la ce sera propre je te remercie je marque comme résolu

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/05/2011, 15h46
  2. [FLASH 5] Comment créer un lien hypertexte
    Par ajit dans le forum Flash
    Réponses: 4
    Dernier message: 30/03/2006, 12h26
  3. Comment créer un nouveau dossier par programmation ?
    Par annecyrond dans le forum Langage
    Réponses: 3
    Dernier message: 27/03/2003, 07h59
  4. Comment créer et executer un .EXE
    Par maher12 dans le forum Flash
    Réponses: 3
    Dernier message: 26/09/2002, 08h33
  5. [] [Stratégie] Comment créer un fichier log
    Par Skeezo dans le forum Installation, Déploiement et Sécurité
    Réponses: 4
    Dernier message: 16/09/2002, 18h30

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