Bonjour,

Avec process je peux utiliser un programme externe comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
void processStart(string programme , string fichier)
        {
            Process proc = new Process();
            fichier = fichier.Replace(@"\" , @"\\");
            programme = programme.Replace(@"\", @"\\");
            proc.StartInfo.UseShellExecute = false;                     // rediriger la sortie
            proc.StartInfo.RedirectStandardOutput = true;               // récupérer le message de sortie
            proc.StartInfo.FileName = programme;
            proc.StartInfo.Arguments = fichier;
            proc.Start();
            proc.Close();
        }
J'ai un bouton et quand je clique dessus je lance Paint avec le lien et le nom de mon image jpg déjà sélectionnée dans une ligne de mon DataGridView1 qui comporte le chemin et le nom de mon image en Cells[17].

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
20
21
22
23
24
25
private void Bpaint_Click(object sender, EventArgs e)
        {
            int l;
             string chjpg;
             if (DataGridView1.Rows.Count > 0)
            {
                l = DataGridView1.CurrentCell.RowIndex;
                // test si sélection
                chjpg = (string)DataGridView1.Rows[l].Cells[17].Value;
 
                if (chjpg != null)
                {
 
                    if (!System.IO.File.Exists(chjpg))
                    {
                             MessageBox.Show("Image jpg introuvable.", "Erreur de fichier");
                            return;
                        }
                        else
                        {
                               processStart("mspaint.exe", chjpg);
                            }
                        }
                    }
            }
Cela fonctionne très bien avec Vista, mais pas avec XP. Le chemin de l'image n'est pas reconnu.
Pouvez-vous m'aider ?

Jean