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

C# Discussion :

Démarrer une installation [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 152
    Par défaut Démarrer une installation
    Bonjour,

    J'ai une application Windows qui vérifie si toutes les applications sur le poste de travail y sont. Un genre de "Checklist". Lorsqu'une application n'est pas installée j'ai un bouton qui permet de procéder à l'installation.

    Voici ma déclaration :

    NetPath = "\\Server\folder\"
    CommandLine = "toto.exe /passive /quiet"

    ProcessStartInfo proc = new ProcessStartInfo();
    proc.UseShellExecute = false;
    proc.WorkingDirectory = NetPath;
    proc.FileName = CommandLine;
    proc.Domain = "DOM";
    proc.UserName = "TOTO";
    proc.Password = pwd;
    Process.Start(proc);
    Je reçois un message qui m'informe que le fichier spécifié est introuvable Et je vous assure que ce n'est pas le cas.

  2. #2
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    Essaie un peu ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    NetPath = @"\Server\folder\"
    Normalement dans une chaine de caractère, tu dois doublez les \ quand elle représente un chemin ce qui est ton cas. le @ permet de ne pas faire de doublage.
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  3. #3
    Membre Expert Avatar de meziantou
    Homme Profil pro
    autre
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : autre
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Par défaut
    ProcessStartInfo a 2 propriétés pour spécifier la ligne de commande : FileName et Arguments. La première permet de spécifier le fichier a exécuter (toto.exe) et la deuxième permet de spécifier les arguments (/passive /quiet)

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 152
    Par défaut
    Normalement dans une chaine de caractère, tu dois doublez les \ quand elle représente un chemin ce qui est ton cas. le @ permet de ne pas faire de doublage
    Oui, dans mon exemple je ne l'avais pas mis, mais effectivement dans mon code la syntaxe est bonne. Merci


    ProcessStartInfo a 2 propriétés pour spécifier la ligne de commande : FileName et Arguments. La première permet de spécifier le fichier a exécuter (toto.exe) et la deuxième permet de spécifier les arguments (/passive /quiet)
    J'ai pourtant essayé et ça ne fonctionne pas, je ne sais pas pourquoi !

    Merci

  5. #5
    Membre du Club
    Profil pro
    Pokemon
    Inscrit en
    Mars 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pokemon
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 8
    Par défaut
    C'est Server\folder qu'il trouve pas ou toto.exe ?

    si c'est Server\folder
    je pense que tu devrais essayer @"Server\folder" (sans le '\' au début) si tu veux faire un chemin relatif

  6. #6
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    J'ai déjà eu des problèmes d'accès de ce genre avec des partages réseaux. Par code le répertoire était inaccessible.

    Je passais par l'explorateur de fichier, cliquait sur celui-ci qui était accessible PAR WINDOWS, et après cette manipulation, il devenait accessible aussi pour mon application.

    Je n'ai hélas pas encore eu le temps de creuser dans ce sens, mais il me semble que c'est le même genre de problème. Si tu peux faire le test chez toi pour confirmer.
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  7. #7
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Par défaut
    Salut,

    En effet, comme infosam76 le précise, l'accès au répertoire réseau depuis le code pose des problèmes...
    J'ai trouvé cette alternative qui m'a permis d’accéder à mes fichiers sur lecteur réseau:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                    Process delete = Process.Start("net.exe", @"use K: /DELETE /YES"); //Suppression du lecteur K:
                    delete.WaitForExit();
                    Process create = Process.Start("net.exe", @"use K: \\SERVEUR\Svg password /USER:login /PERSISTENT:YES"); //création du lecteur K:
                    create.WaitForExit();
    Une fois ces commandes passées, ton accès réseau au répertoire voulu est de nouveau dispo

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

Discussions similaires

  1. démarrer tomcat installé sur une machine distante
    Par info007 dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 19/12/2008, 16h26
  2. Bases à supprimé après une installation de SQL Server ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/03/2005, 16h57
  3. Message d'erreur à l'exécution d'une install
    Par titof dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 22/03/2005, 11h20
  4. Problème de BOOT sur CD pour une installation d'une DEBIAN
    Par black is beautiful dans le forum Debian
    Réponses: 7
    Dernier message: 22/09/2004, 21h15
  5. Créer une install
    Par Erwin dans le forum MFC
    Réponses: 13
    Dernier message: 27/01/2004, 18h25

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