Bonjour à tous,
J'utilises la méthode suivante pour ouvrir des documents (avec le programme qui va bien) depuis ma form :
En fonction du fichier passé en paramètre deux possibilités : soit tout marche (je récupère bien mon pocess ID et la fenêtre de l'application externe est bien redimensionnée), soit je me prend l'exception "Aucun processus n'est lié à cet objet".
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
18
19 private void LancementApplicationExterne(System.Drawing.Rectangle rect, string fileName) { Process externProcess = new Process(); externProcess.EnableRaisingEvents = true; externProcess.StartInfo.FileName = fileName; externProcess.Exited += new EventHandler(externProcess_Exited); try { externProcess.Start(); externProcess.WaitForInputIdle(); MoveWindow(externProcess.MainWindowHandle, rect.X, rect.Y, rect.Width, rect.Height, true); listProcessId.Add(_externProcess.Id); } catch(Exception e) { string errMsg = e.Message; } }
Par exemple ca marche pour un .txt ou .xls mais ça foire pour un .jpg!
De plus j'utilise cette méthode pour comparer par exemple deux fichiers .xls (titi.xls et toto.xls). J'appel une première fois ma méthode avec en fileName titi.xls => ok pas de souci!
Et au second appel avec toto.xls en param j'obtient encore la même erreur ("Aucun processus n'est lié à cet objet").
Avez-vous une piste? Merci d'avance
Partager