begin process at 2010 02 10 00:24:14
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

.NET

 > LANCER UN EXE / FICHIER

LANCER UN EXE / FICHIER


 Information sur la source

Note :
8,21 / 10 - par 14 personnes
8,21 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :.NET Source .NET ( DotNet ) Classé sous :executer, lancer, processus, application, fichier Niveau :Débutant Date de création :24/01/2004 Date de mise à jour :21/11/2005 17:14:19 Vu :57 523

Auteur : coq

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (45)
Ajouter un commentaire et/ou une note


 Description

J'ai comme l'impression que c'est une question récurente ces derniers temps ^^
Comment lancer un executable ?
Comment ouvrir un fichier pour l'afficher dans l'appli qui le gere ?

Source

  • // Tout d'abord :
  • using System.Diagnostics;
  • // Lancements "simples" (pas d'interaction avec l'element lancé)
  • // exe connu par win
  • Process.Start(new ProcessStartInfo("notepad.exe"));
  • // exe "non connu"
  • Process.Start(new ProcessStartInfo(@"C:\Un dossier\executable.exe"));
  • // fichier qui beneficie d'une association a une appli installée (txt avec notepad, pdf avec acrobat, avi, wav, etc etc etc)
  • Process.Start(new ProcessStartInfo(@"C:\Un dossier\fichier.avi"));
  • // Lancements "avancés"
  • // Lancement puis attente de fermeture
  • Process proc = new Process();
  • proc.StartInfo = new ProcessStartInfo(...);
  • proc.Start();
  • proc.WaitForExit();
  • // ceci est equivalent :
  • Process proc = Process.Start(new ProcessStartInfo(...));
  • proc.WaitForExit();
  • // enfin dernier exemple : lancement d'une cmd sous XP en "silent"
  • // commande : net share "mon partage" /UNLIMITED
  • // cet exemple permet de voir le passage d'arguments a l'appli lancée ainsi que l'attribution d'un style d'affichage de sa fenetre
  • ProcessStartInfo infos = new ProcessStartInfo("net.exe","share \"mon partage\" /UNLIMITED");
  • infos.WindowStyle = ProcessWindowStyle.Hidden;
  • Process proc = Process.Start(infos);
// Tout d'abord : 
using System.Diagnostics;

// Lancements "simples" (pas d'interaction avec l'element lancé)
// exe connu par win
Process.Start(new ProcessStartInfo("notepad.exe"));

// exe "non connu"
Process.Start(new ProcessStartInfo(@"C:\Un dossier\executable.exe"));

// fichier qui beneficie d'une association a une appli installée (txt avec notepad, pdf avec acrobat, avi, wav, etc etc etc)
Process.Start(new ProcessStartInfo(@"C:\Un dossier\fichier.avi"));


// Lancements "avancés"
// Lancement puis attente de fermeture
Process proc = new Process();
proc.StartInfo = new ProcessStartInfo(...);
proc.Start();
proc.WaitForExit();

// ceci est equivalent : 
Process proc = Process.Start(new ProcessStartInfo(...));
proc.WaitForExit();

// enfin dernier exemple : lancement d'une cmd sous XP en "silent" 
// commande : net share "mon partage" /UNLIMITED
// cet exemple permet de voir le passage d'arguments a l'appli lancée ainsi que l'attribution d'un style d'affichage de sa fenetre
ProcessStartInfo infos = new ProcessStartInfo("net.exe","share \"mon partage\" /UNLIMITED");
infos.WindowStyle = ProcessWindowStyle.Hidden;
Process proc = Process.Start(infos);

 Conclusion

Pour d'autres utilisations a vous de voir les propriétés
la MSDN est ton amie ^^ ( http://msdn.microsoft.com/library/ )


 Historique

21 novembre 2005 17:14:19 :
Ajout des mots clés

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) COQTEXTTOOLS : TRANSFORMATIONS TEXTE SIMPLE ET UTILISATION A...
Source avec Zip Source .NET (Dotnet) XPATH : UTILISEZ DES REQUÊTES PARAMÉTRÉES
Source avec Zip Source .NET (Dotnet) PORTÉE DE LA VALEUR D'UN CHAMP STATIC
Source avec Zip Source .NET (Dotnet) PINVOKE DYNAMIQUE
Source avec Zip Source .NET (Dotnet) MANIPULATION DE LA CORBEILLE (SUPPRESSION, INFORMATIONS, VID...

 Sources de la même categorie

Source avec Zip CHAT SERVER-CLIENT par abderrahmenbilog
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMULATION DE CONSOLE POUR WINDOWS MOBILE par originalcompo
Source avec Zip Source .NET (Dotnet) BASE DE DONNÉES EN XML par DanMor498
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMPLECONV - APPLICATION DE CONVERSION MONÉTAIRE AVEC TAUX E... par Jeffrey_
Source avec Zip Source .NET (Dotnet) TRAITEUR D'IMAGE (MINI) par ycyril

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) RECHERCHE ET GESTION DE FICHIERS PERSONNALISÉES par JeremyLecouvert
Source .NET (Dotnet) GREP POUR WINDOWS par Warny
Source avec Zip Source .NET (Dotnet) CHECK IDENTICAL FILES par eldim
Source avec Zip Source .NET (Dotnet) LISTER LES HANDLES (FICHIERS, CLÉ DE REGISTRES,...) OUVERTS ... par ShareVB
Source .NET (Dotnet) COMPTEURPROCESSUS : CONTROLER LA DUREE D'UTILISATION D'UNE A... par zinzin61

Commentaires et avis

Commentaire de coq le 25/01/2004 11:01:31 administrateur CS

modif : ajout du Start qui manquait ^^

Commentaire de facdaar le 02/08/2004 09:00:35

Merci. Je me damandais justement comment lancer un fichier PDF sans avoir à me soucier de la version d'Acrobat installée ...

David.

Commentaire de psycomel le 22/09/2004 11:25:06

Salut!!

ca ne marche pas chez moi ta source. Meme pour un lancement simple. Il me crée le processus dans le gestionnaire des taches mais il ne mouvre pas notepad par exemple.
Personne n'a une idée ???

Commentaire de coq le 22/09/2004 11:45:05 administrateur CS

montre ton code de lancement

Commentaire de psycomel le 22/09/2004 12:26:20

c'est mon seul code. Je suis en c# et je travaille avec les webform. using System.Diagnostics;

Process.Start(new ProcessStartInfo("calc.exe"));

Commentaire de coq le 22/09/2004 14:07:25 administrateur CS

ce code lance la caluclatrice sur le serveur, pas chez le client

Commentaire de psycomel le 22/09/2004 14:11:12

D'akord je savais pas mais je suis le serveur !! pourtant je n'ai rien ?

Commentaire de coq le 22/09/2004 14:46:41 administrateur CS

je ne connais pas le sujet en profondeur mais je pense qu'il est normal que les GUI ne sois pas affichées par un lancement de ce genre

Commentaire de psycomel le 22/09/2004 14:51:36

Les GUI je ne connais pas ce terme, mais j'aimerais savoir si tu avais vraiment testé le lancement de ces executables avec les webforms ??? (parcke si oui ! c tres tres bizare que ca ne marche pas pour moi )

et kan tu dis lancement de ce genre : je n'arrive pas non plus à ouvrir un fichier pour l'afficher dans l'application qui le gère. (par exemple un document Word). Seul WINWORD fait partie de mes processus mais aucune fenetre WORD.?!!
...

Commentaire de coq le 22/09/2004 15:06:34 administrateur CS

interface graphique si tu preferes
oui j'ai tester

Commentaire de psycomel le 22/09/2004 15:28:29

pourtant pas mal de personnes sur le site posent la meme question que je te pose. On ne voit l'executable que dans les processus.

J'ai essayé avec tous les paramètres possible dans Process.StartInfo. ...

par exemple cet exemple trouvé quelque part :

Process myProcess = new Process();
myProcess.StartInfo.UseShellExecute=true;
myProcess.StartInfo.FileName= "calc.exe";
myProcess.StartInfo.CreateNoWindow = false;
myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
myProcess.Start();


???? HELP ME MAN IF YOU CAN !!

Commentaire de coq le 22/09/2004 16:27:52 administrateur CS

mes exemples sont donnés pour du winform, pas du webform
ils lancent l'appli pour l'utilisateur courant, qui a sa session ouverte
quand tu lances en webform ça lance le process sur le serveur pour "l'utilisateur" ASPNET

Commentaire de psycomel le 22/09/2004 17:07:46

ok dakor. c'est avec winform. mais apres je suis dakor ca lance le process sur le serveur mais ca lance pas l'application JUSTE LE PROCESS !!!! :(

Merci pour tes réponses, c gentil de ta part. bye

Commentaire de virgul le 12/01/2005 08:22:17

Bonjour tout le monde,

Y a juste un truc que je ne comprend pas si comme le dit psycomel ca lance juste le process mais alors sur la machine client ca ne lui ouvre pas le pdf que l'on veux?

Pouvez vous m'expliqué comment on ouvre un pdf sur la machine du client

Merci de votre réponse

Commentaire de Diamondduff le 08/03/2005 11:25:35

Pour lancer en pdf sur la machine cliente (ie via navigateur), tu as un truc qui s'appelle : lien hypertexte.
Il ne faut pas que tu lances une appli externe bien sur, niveau sécurité c'est impossible.
Il faut juste que le plug in acrobat soit installé sur le navigateur, sinon il te sera proposé de l'enregistrer sous.

ca repond à ta question?

Commentaire de virgul le 08/03/2005 11:42:20

Merci pour ta réponse mais en faite je l'avais déjà trouvé sur un autre site!!!

C'est sympa

++

Thierry

Commentaire de quarto le 16/01/2006 16:54:13

Salut,
Je suis vraiment intéressé... mais je ne sais pas ce que c'est que «System.Diagnostics»? C'est une unité? Dans ce cas, où se cache-t-elle? Meri de me répondre car ça m'intéresse vraiment...

Quarto

Commentaire de coq le 30/01/2006 18:00:58 administrateur CS

Salut,

C'est un espace de noms : http://msdn.microsoft.com/library/fre/default.asp?url=/library/fre/cpref/html/frlrfSystemDiagnostics.asp

La classe qui nous intéresse ici (Process : http://msdn.microsoft.com/library/fre/default.asp?url=/library/fre/cpref/html/frlrfsystemdiagnosticsprocessclasstopic.asp) se situe dans l'assembly "System"

Commentaire de quarto le 31/01/2006 15:33:00

Merci Coq,

Je vais vite me mettre à jour... C'est un plaisir d'apprendre avec vous tous !

Quarto

Commentaire de vendeeman85 le 03/05/2006 10:40:31

Bon je sais pas si ça a ete résolu mais ça ça fonctionne correctement chez moi :

using System.Diagnostics;
...
public void Preview(string argument)
        {
            Process proc = new Process();
            ProcessStartInfo processStarInf = new ProcessStartInfo();
            processStarInf.FileName = "iexplore.exe";
            processStarInf.Arguments = argument;
            processStarInf.WindowStyle = ProcessWindowStyle.Maximized;
            proc = Process.Start(processStarInf);
        }


//et pour l'appeler:

// Lancer IE en ouvrant un fichier local
Preview("file://" + filepath);

//ou

// Lancer IE en ouvrant l'url d'un site
Preview("http://www.csharpfr.com");

Commentaire de djskeud le 30/05/2006 13:27:37

Bon code, clair et explicite. Rien a dire ça marche au top !!

Commentaire de lydiemml le 21/11/2006 15:22:33

Merci bcp. J'ai utilisé ton code en vb.net, j'ai testé avec des fichiers pdf, doc et des fichiers image. ça marche sans problème ! j'en avais vraiment besoin. encore merci!!

Commentaire de begiladss le 01/03/2007 17:42:35

Comment créer un fichier executable ou un fichier .exe avec vb express 2005?
Merci d'avance.

Commentaire de coq le 01/03/2007 18:02:16 administrateur CS

Salut,

En compilant.

Commentaire de jomree le 15/05/2007 11:44:19

Merci pour cette source, ça marche impeccable :D

Commentaire de Hybris95 le 03/11/2007 18:57:04

Salut,

Quelqu'un sait comment modifier les données d'un Processus ?

C'est à dire : Réussir à acceder à la mémoire d'un processus, trouver l'adresse mémoire de telle variable et enfin la modifier (ce qui ne devrait pas être le plus dur ^^).

Commentaire de wald39 le 08/11/2007 20:01:57

Est ce que quelqun'un saurait comment lacer un fichier qui est dans une ressource ? (en l'occyrence un ecran de veille .scr)

Commentaire de dadamagouil le 13/11/2007 14:37:48

J'ai trouvé un petit bug que j'ai pas résolu, si par exemple tu ouvre un fichier word et que un fichier word est déjà ouvert auparavant et que tu veux faire un WaitForExit, le process n'attends pas et retourne une erreur.

Si quelque trouve une solution elle est la bien venu. En fait j'ai essayé que avec word. Pour le reste je ne sais pas.

Commentaire de gabiset le 13/11/2007 16:37:40

Merci pour ce code, il fonctionne parfaitement !

A tout hasard, existe-t-il un moyen de lancer une appli, style notepad, côté client ?

Commentaire de Renfield le 13/11/2007 16:40:49 administrateur CS

coté client ?

Commentaire de gabiset le 13/11/2007 16:49:18

oui, en fait ce n'est pas notepad que je veux lancer bien sûr, mais une appli perso...
Dans la mesure où mon serveur n'est pas hébergé chez moi, j'aimerais pouvoir lancer mon appli (qui est située sur le serveur) à partir de mon site en ASP. D'où ma question de savoir s'il est possible de lancer une appli côté client ?
Car actuellement, j'ai testé avec notepad, et il se lance bien mais sur le serveur donc je ne le vois pas !!!
Merci ;-)

Commentaire de dadamagouil le 13/11/2007 17:08:43

Oui c'est possible, mais niveau sécurité, je pense que le client doit accepter ce lancement. Enfin c'est d'après ce que j'en sais. J'ai vu pas mal de site faire ça. Je me rappel avoir vu un site qui permettait de faire des exercices WORD EXCEL ... et qui une vois l'exercice choisi il ouvrait le programme en question et il lancer même une application qui n'était pas installé sur le client.

Commentaire de gabiset le 13/11/2007 17:12:50

Ce serait super, sais-tu comment faire ???

Commentaire de dadamagouil le 14/11/2007 19:51:09

Ben écoute moi je m'y connais pas trop en ASP.NET parce que d'après ce que j'ai compris c'est ça que tu utilise en fait. Mais en Soft C#.NET j'utiliserais des Sockets. Et une requête personnalisée qui donne l'instruction en fait.

Commentaire de boulmaouahibe le 18/11/2007 02:24:06

salut a tous
je veux afficher l'output d'un processus sous dos
dans un textbox

Process myProcess = new Process();
myProcess.StartInfo.FileName = label8.Text + label14.Text;
myProcess.StartInfo.WorkingDirectory = label8.Text + label15.Text;        
myProcess.StartInfo.UseShellExecute = false;
myProcess.StartInfo.RedirectStandardOutput = true;
myProcess.StartInfo.CreateNoWindow = true;
myProcess.Start();

Commentaire de madebyhisto le 07/02/2008 22:53:36

Bonjour à tous,

j'ai un léger soucis avec l'objet Process. Je suis présentement dans une webform (donc un site web) et je veux démarrer un application sur mon serveur. Le problème c'est que le process apparait mais l'execution ne se fait pas. Voici un exemple concret. Si je fait Process.Start(new ProcessStartInfo("C:\test.bat")); et que mon fichier bat contient (notepad.exe) alors dans le gestionnaire de tache je vais voir apparaître cmd.exe comme process mais notepad ne s'executera jamais.

Quelqu'un a une idée face à se problème qui franchement est en train de me faire sacrer....:@

MadeByHisto

Commentaire de kikodos23 le 23/03/2008 22:18:20

bonjour ,
g créer une application qui offre aux aux clients de travailler en collaboration mais quand un client lance un processus sur une autre machine sa ne fonctionne pas ,mais localement sa fonctionne bien (sachant ke parfe,antivir...ts sont desactivé) c koi le pb et koi faire???

Commentaire de kikodos23 le 23/03/2008 23:11:00

Désolé pour le doublé mais g un autre petite question comment lancer une application (monfile.exe) situer a une machine distante et le fichier(monfile.exe) existe dans le répertoire de cette machine (C:\)commet je peut écrire la raquette du lancement (Process.start(new process....));,ou je peut indiquer le chemin exacte u fichier c à d comment intégrer l'@ ip du la machine du cette machine ...
(Process.Start(new ProcessStartInfo(@"C:\monfile.exe"));ou j'integrer l'@ ip exactement ou comment faire??  

Commentaire de coq le 24/03/2008 01:02:27 administrateur CS

Salut,

Pas vraiment, et heureusement.
Des outils permettant de faire ce genre de choses existent, comme notamment psexec (http://www.microsoft.com/technet/sysinternals/ProcessesAndThreads/PsExec.mspx) mais nous parlons ici de taches administratives lancée avec des privilèges administratifs que les utilisateurs ne sont absolument pas censés avoir en situation normale.

Commentaire de kikodos23 le 24/03/2008 11:48:56

Bonjour ,
moi je veut un moyen avec C# ,par exemple eske je peut par exemple envoyer la requette (Process.Start(new ProcessStartInfo(@"C:\monfile.exe")); dans une socket envoyer au serveur et lors de la reception elle s'execute automatiquement eske c possible de faire sa ???

Commentaire de coq le 24/03/2008 11:55:46 administrateur CS

Autant envoyer seulement le chemin...

Commentaire de kikodos23 le 24/03/2008 15:50:29

c àdire (Process.Start(new ProcessStartInfo(@"http://@ip/monrepertoire/monfile.exe"));??

Commentaire de kikodos23 le 24/03/2008 16:21:05

c à dire j'envoie (C:\monfile.exe) a la machine distante comment faire sa svp et coment associer des parametre a cette requette???(ex: monfile.exe fait l'addition de a+b comment je le lance dans la machine distante avec ces paramettre a et b??)avec plus de details SVP c urgen pour moi et Merci d'avance

Commentaire de coq le 24/03/2008 16:29:52 administrateur CS

Les commentaires sur source ne sont pas le meilleur endroit pour ce genre de discussion, tu devrais plutôt demander ça dans le forum, il y a plus de chances d'obtenir une réponse.

Commentaire de loloof64 le 16/10/2009 18:07:38 10/10

Et bien chapeau monsieur et merci !
Une situation on ne peut plus utile, courte et à la fois complètes, commentaires et exemples on ne peut plus simple (du moins pour les 3 premières) => Chapeau et merci !!!!!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Ouverture multiple fichiers pr 1 seul processus [ par Blacknight91 ] Bl@cknightBonjour,J'ai une application pouvant recevoir en argument un chemin d'un fichier.J'ai fait l'association extension de fichier <-> mon Lancer un fichier bat d'une application .NET [ par AymenEurotech ] Bonjour, Je crée une application en C#, qui doit lancer des fichiers ‘.bat’ Je lance l’un des fichiers en utilisant le code suivant Mémoire partagée entre une appli c# et une appli c++ [ par websinh ] Bonjour à tous, Je travaille dans le secteur de l'automation et je développe la partie IHM. Actuellement, mon IHM est un projet Borland C++ Builder ouvrir un fichier enregistré sur une autre pc [ par laymouna98 ] salut à tous Je traville une application avec C# et base Oracle, j'ai déployée mon application sur un autre serveur à laide de IIS, à partir de cette Inclure un fichier RESSOURCE [ par vanisheur ] Bonjour a tous, je cherche a inclure dans mon application un fichier binaire. Une fois l'application installée il faut qu'elle puisse acceder a ce fi Problème de partage d'une base Access [ par phildev98 ] Bonjour à tous, Je suis confronté à un problème de partage d'une base de données Access sur lequel je butte depuis quelques jours. Je doit accéder à lancer un rapport Crystal Report [ par Souliabdo ] Bonjour, J’ai créé un rapport avec crystal report sous VS 2008 (c#), j’arrive à lancer le rapport à partir de mon application, quand j’ai installé l’ demander un compte utilisateur avant de lancer une application [ par ilayDama ] Bonjour! je developpe en ce moment un logiciel pour une grande societe et je suis entrain de concretiser et cloturer quelque details. Mais le logiciel Lancer appli WPF depuis appli c# [ par Grewdiv ] Bonjour, Comment faut-il procéder pour lancer une appli wpf depuis une appli c#, par exemple en cliquant sur un bouton dans le programme c#. Et peut-o exécution d'un fichier sur un autre pc [ par wasabis ] Bonjours, désolé si je me suis trompé de section je suis nouveau je sais pas trop ou poster [^^confus2]. cela fais 3 mois que je développe le c# et la


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales