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 :

Utilisation de Application.StartupPath


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Par défaut Utilisation de Application.StartupPath
    Bonjour

    Dans mon programme, j'utilise un fichier .txt où je stock des valeurs.
    dans mon exe je vérifie si le fichier a été crée si non je le créé avec
    File.CreateText(path)
    je souhait que txt soit mis dans le même répertoire que l'exe donc :
    Dim path As String = Application.StartupPath

    lorsque je lance mon exe (installé dans c:\essais) , microsoft.net Framework m'annonce que l'accès au chemin c:\essais est refusé ????

    lorsque je regarde les propriétés de mon répertoire essais il est en lecture seul et si je le met en accès autorisé, dès le lancement de mon exe il repasse en lecture seul ??

    pouvez vous m'aider ?

    merci

  2. #2
    Membre éclairé Avatar de hellspawn_ludo
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 257
    Par défaut
    C'est bizarre, chez moi ça fonctionne bien.

    Voilà le code que j'ai mis dans un bouton pour tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    IO.File.CreateText("c:\ludo.txt")
    Tu peux mettre le code de creation de ton fichier (la fonction, la procédure...) ?

    Merci.

  3. #3
    Membre confirmé
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Par défaut
    Mon code :

    si Dim path As String = Application.StartupPath ==> accès refusé

    si Dim path As String = "c:\DD440\Write440.txt" ==> Ok si et seulement si le répertoire existe

    Using sw As StreamWriter = File.CreateText(path)
    sw.WriteLine("K=1024 T=32")
    sw.Close
    End Using

    C'est Application.StartupPath qui me pose problème et qui pourtant devrais me permètre de ne pas tenir compte de l'endroit où va être installé l'exe.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    Salut,

    Juste pour être sur, quand tu dis :

    Dim path As String = Application.StartupPath()

    Tu fais bien

    path &= "\Write440.txt" ensuite ?

    a+

  5. #5
    Membre éclairé Avatar de hellspawn_ludo
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 257
    Par défaut
    Ce code fonctionne nickel à partir du moment ou le dossier existe effectivement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim path As String = Application.StartupPath
     
    Using sw As System.IO.StreamWriter = IO.File.CreateText(path & "\Write440.txt")
    sw.WriteLine("K=1024 T=32")
    sw.Close()
    End Using
    Si tu veux le mettre dans un répertoire bien spécifique, le code suivant cré un dossier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
            IO.Directory.CreateDirectory(Application.StartupPath & "\MonNouveauDossier")

    Avant de créer ton fichier, vérifie en 1er lieu si ton dossier existe.
    S'il n'existe pas, cré-le.
    Ensuite tu récupères le chemin du dossier nouvellemtn créé et tu le stocke dans ta variable PATH.
    Après cela, tu pourras utiliser le 1er code que j'ai mis en haut dans ce message.

    Et voilà.

  6. #6
    Membre confirmé
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Par défaut
    Ok
    j'avais oublié de nom de mon fichier

    mon code fonctionnel (répertoire existant ou non)
    Dim path As String = Application.StartupPath & My.Resources.NomRepertoire

    If File.Exists(path & My.Resources.NomFichier) Then
    ' je fais ce que j'ai à faire
    else 'création du répertoire et du fichier avec valeur bidon dedans
    IO.Directory.CreateDirectory(path)
    Using sw As StreamWriter = File.CreateText(path & My.Resources.NomFichier)
    sw.WriteLine("K=1023 T=31")
    sw.Close()
    End Using

    end if

    Merci à tous

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/05/2007, 12h22
  2. Réponses: 3
    Dernier message: 26/02/2007, 11h31
  3. Limitation d'utilisation d'application sur réseau?
    Par sessime dans le forum Langage
    Réponses: 2
    Dernier message: 10/02/2006, 19h04
  4. Réponses: 3
    Dernier message: 07/01/2006, 22h39
  5. [Excel] Utiliser une application externe par une macro
    Par thierry2.dlp dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/08/2005, 22h07

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