Plop,
J'ai un petit souci avec une petite application que je développe dont le but est d'installer de manière automatisée les logiciels que j'ai l'habitude de réinstaller sur les postes de mes clients (suis tech info dans une petite boîte de maintenance).
En gros je procède de la manière suivante :
- chaque dossier a un fichier si.xml que je parse via XPathDocument et qui ressemble à ça :
- Je récupère les valeurs
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 <si> <xp> <exec>setup.exe</exec> <params>/quiet</params> <cmd>xcopy "silent\Open Office\user\*.*" %USERPROFILE%\Application Data\OpenOffice.org\3\user\*.* /e /f</cmd> </xp> <vista> <exec>setup.exe</exec> <params>/quiet</params> <cmd>xcopy "silent\Open Office\user\*.*" %USERPROFILE%\AppData\Roaming\OpenOffice.org\3\user\*.* /e /f</cmd> </vista> <w7> <exec>setup.exe</exec> <params>/quiet</params> <cmd>xcopy "silent\Open Office\user\*.*" %USERPROFILE%\AppData\Roaming\OpenOffice.org\3\user\*.* /e /f</cmd> </w7> </si>
- J'éxécute et je fais avancer une petite progressbar
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 string exec = iter.Current.SelectSingleNode("exec").Value; string silent = iter.Current.SelectSingleNode("params").Value; string cmd = iter.Current.SelectSingleNode("cmd").Value;
Mon application fonctionne bien, le seul problème vient du fait qu'elle "freeze", on ne voit pas la progression mais continue à fonctionner.
Code : Sélectionner tout - Visualiser dans une fenêtre à part System.Diagnostics.Process.Start(path+"\\"+exec, silent).WaitForExit();
Ca doit venir de mon Process.Start suivi de mon WaitForExit(); mais comme je n'ai pas la moindre idée pour corriger ça (après avoir cherché un bon moment sur msdn) je m'en remets à votre savoir.
L'idée est donc de pouvoir voir la progression de l'installation au fur et à mesure.
Merci de votre aide.
Flexii







Répondre avec citation




Partager