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 :

Service Windows et lancement de Process


Sujet :

C#

  1. #1
    Membre habitué Avatar de thelpi
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 217
    Points : 156
    Points
    156
    Par défaut Service Windows et lancement de Process
    Bonjour à tous,

    J'ai déjà trouvé plusieurs forums posant la même question, mais je n'ai jamais réussi à faire fonctionner les (quelques) méthodes proposées, je m'explique :

    J'ai une application qui fonctionne en service Windows, elle est déployée sur un petit parc de PC distants (tous en Windows Server 2003 R2 ou 2008 - ça peut avoir son importance).

    Pour mettre à jour l'application, sans intervention manuelle, je me suis lancé dans le codage d'un autre service Windows : il contrôle si une MAJ est dispo, et si oui il effectue le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // installation à partir du fichier .msi
    Process installer = new Process();
    installer.StartInfo.FileName = "MsiExec.exe";
    installer.StartInfo.Arguments = "/qn /i{" + PRODUCT_KEY + "}";
    installer.StartInfo.UseShellExecute = false;
    installer.Start();
    installer.WaitForExit();
    Ce code ne fonctionne jamais ! (mais ne lève pas d'erreurs, et le WaitForExit() ne dure pas plus de 0.5s)
    Par contre, si je le copie colle dans une application type Windows Form, le programme s'installe bien


    J'ai aussi tenté la correction suivante, qui elle lève l'erreur "Accès refusé" (alors que le compte spécifié à tous les droits possibles, c'est le seul Administrateur de la machine)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // installation à partir du fichier .msi, en simulant la connexion avec un compte utilisateur
    Process installer = new Process();
    installer.StartInfo.UseShellExecute = false;
    installer.StartInfo.Domain = "mon_domaine";
    installer.StartInfo.UserName = "mon_compte";
    installer.StartInfo.Password = password; // SecureString de "mon_password"
    installer.StartInfo.LoadUserProfile = true;
    installer.StartInfo.FileName = "MsiExec.exe";
    installer.StartInfo.Arguments = "/qn /i{" + PRODUCT_KEY + "}";
    installer.Start();
    installer.WaitForExit();
    Une dernière précision : cocher la case "Autoriser le service à interagir avec le bureau" sur le service de MAJ ne change rien non plus

    Merci pour votre aide !

  2. #2
    Membre expérimenté

    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2009
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 553
    Points : 1 672
    Points
    1 672
    Par défaut
    Hello,
    Essayes de récupérer la sortie standard et l'erreur standard pour voir si ton .exe retourne des infos utiles...
    Essayes aussi de récupérer l' ExitCode, ça peut également donner des indications.

Discussions similaires

  1. Lancement service windows
    Par max12 dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 07/08/2007, 14h51
  2. pb lors du lancement auto d'un Service windows
    Par key31 dans le forum VB.NET
    Réponses: 2
    Dernier message: 07/08/2007, 14h45
  3. Réponses: 3
    Dernier message: 30/07/2007, 11h55
  4. Pb lors du lancement d'un service windows
    Par Med80 dans le forum Général Dotnet
    Réponses: 7
    Dernier message: 24/07/2007, 13h40
  5. Service Windows et lancement de processus
    Par sharpmao dans le forum Windows
    Réponses: 5
    Dernier message: 15/04/2006, 23h48

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