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 :

Problème manipulation variables d'environnement Windows


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif
    Homme Profil pro
    Auteur logiciels et romans
    Inscrit en
    Février 2009
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auteur logiciels et romans
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Février 2009
    Messages : 203
    Par défaut Problème manipulation variables d'environnement Windows
    Bonjour,

    Je n'arrive pas à passer des variables d'environnement Windows entre deux programmes (exe),voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    ' code programme 1
    Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
        Dim r As String
        Dim r1 As String
        Dim r2 As String
        Dim envNom As String
        Dim envVersion As String
        envNom = programme
        envVersion = version
        r = Environment.GetEnvironmentVariable("vbnet1") ' lit
        If Trim(r) <> "" Then Exit Sub
        Environment.SetEnvironmentVariable("vbnet1", envNom) ' écrit
        Environment.SetEnvironmentVariable("vbnet2", envVersion)
        r1 = Environment.GetEnvironmentVariable("vbnet1") ' lit
        r2 = Environment.GetEnvironmentVariable("vbnet2") ' lit
        MsgBox(r1 & vbLf & r2) '  BON  ###
        'Environment.SetEnvironmentVariable("vbnet2", Nothing) ' efface
      End Sub
    Mais au code du programme 2 que je lance ensuite manuellement (en laissant le 1 lancé), je ne peux plus récupérer le contenu des 2 variables, voici le code, où est l'erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ' code programme exe 2
     Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim nomLogiciel As String
        Dim numeroVersion As String
        nomLogiciel = Environment.GetEnvironmentVariable("vbnet1") ' lit
        numeroVersion = Environment.GetEnvironmentVariable("vbnet2") ' lit
        MsgBox(nomLogiciel & vbLf & numeroVersion) ' VIDE  ###
      End Sub
    Merci, cordialement.

    Joe.
    .

  2. #2
    Membre émérite Avatar de methylene
    Profil pro
    Inscrit en
    Février 2010
    Messages
    659
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2010
    Messages : 659
    Par défaut
    Bonjour,

    Tu ne vas pas directement lire avec le programme 2 les valeurs dont tu as besoin dans le programme 1.

    Ce que tu dois lire c'est le support où sont stockée tes informations (xml, bdd, ect ...).

    Si j'ai bien compris la question au vu de ton code dont je ne comprends pas vraiment le lien entre tes deux programmes.

  3. #3
    Inactif
    Homme Profil pro
    Auteur logiciels et romans
    Inscrit en
    Février 2009
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auteur logiciels et romans
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Février 2009
    Messages : 203
    Par défaut
    Citation Envoyé par methylene Voir le message
    Bonjour,

    Tu ne vas pas directement lire avec le programme 2 les valeurs dont tu as besoin dans le programme 1.

    Ce que tu dois lire c'est le support où sont stockée tes informations (xml, bdd, ect ...).

    Si j'ai bien compris la question au vu de ton code dont je ne comprends pas vraiment le lien entre tes deux programmes.
    Bonjour,

    Merci de ta réponse.

    Ben, l'endroit où sont stockées des variables d'environnement (type Dos), c'est direcement la RAM normalement ?

    En fait je viens juste d'arriver à le faire fonctionner, ça tourne si, au lieu de lancer le second programme manuellement, je le lance avec le premier (Shell ou autres).

    Je te remercie, cordialement.

    Joe.
    .

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Je ne vois pas l'interêt d'utiliser les variables d'environnement entre deux application.

    Comme leur nom l'indique, ce sont des variables d'environnement, pas un mécanisme d'échange de données.

  5. #5
    Inactif
    Homme Profil pro
    Auteur logiciels et romans
    Inscrit en
    Février 2009
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auteur logiciels et romans
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Février 2009
    Messages : 203
    Par défaut Réponse à BlueDeep
    Citation Envoyé par Bluedeep Voir le message
    Je ne vois pas l'interêt d'utiliser les variables d'environnement entre deux application.

    Comme leur nom l'indique, ce sont des variables d'environnement, pas un mécanisme d'échange de données.
    Bonjour,

    Eh ben, elles serviraient à quoi les variables d'environnement alors ?

    Tu as évidemment d'autre façons, comme la BDR (dangereux et pas fait pour ça), le fichier (beaucoup plus long à coder), une BDD (lourd), ou les variables d'environnement, on les utilisais très souvent du temps de DOS ...

    N'y a-t-il pas une confusion entre les variables d'environnement d'un système, d'un mécanisme, d'une plateforme, et que sais-je, qui servent généralement de paramètres, et les "variables d'environnement de la RAM", faites justement pour les échanges rapides et petits entre programmes (depuis msDos).

    Cordialement.
    .

Discussions similaires

  1. [PHP-JS] Variable d'environnement Windows username
    Par licorne dans le forum Langage
    Réponses: 4
    Dernier message: 28/09/2006, 14h52
  2. Problème de variable dans un window.location
    Par baleiney dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 01/07/2006, 17h34
  3. variable d'environnement windows non interprétée
    Par rogerio dans le forum Windows
    Réponses: 4
    Dernier message: 02/06/2006, 07h06
  4. [Debutant(e)]problème de variable d'environnement
    Par tolsam dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/08/2004, 19h08

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