Pytanie : Dlaczego Wychodzić eventhandler System.Diagnostics.Process?

cześć,

I mieć the p_Exited kod proces i ono pracować świetnie dopóki tam  być żadny wyjątek od P_Exited ().

The metoda "StartUploadProcess" wracać prawdziwy lub fałszywy. Nawet jeśli tam  być wyjątek od P_Exited (), "StartUploadProcess" być zawsze "prawdziwy".
I potrzeba ono powrót fałszywy jeżeli tam  być wyjątek od P_Exited ().

Thanks dla jakaś help.
(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:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;

namespace seasharpwinapp
{
    jawny częściowy klasa Form1: Forma
    {

        społeczeństwo Form1 ()
        {
            InitializeComponent ();
        }

        intymny pustka button1_Click (przedmiot nadawca, EventArgs e)
        {
            bool status = StartUploadProcess ();

            jeżeli (status)
            {
                MessageBox.Show ("Upload pomyślny");
            }
            inny
            {
                MessageBox.Show ("Upload nie udać się");
            }
        }
        
        intymny bool StartUploadProcess ()
        {
            próba
            {
                Proces P = nowy proces ();
                P.EnableRaisingEvents = true;
                P.Exited += P_Exited;
                P.StartInfo.FileName = @ " C:\ \ Zastępca \ \ Upload.cmd ";
                P.StartInfo.Arguments = "C:\ \ Zastępca \ \ UploadScript.txt" +" "+ "File1";
                P.Start ();

                powrót prawdziwy;                
            }


            chwyt (Wyjątek x)
            {
                MessageBox.Show (sznurek. Format ("Błąd podczas gdy błąd. {(0)} \ r \ n {(1)}", x.Message, x.InnerException.ToString ()));
                powrotny fałszywy;
            }
        }

        intymny kawitacyjny P_Exited (przedmiot nadawca, System.EventArgs e)
        {
            próba
            {
                System.IO.File.Delete ("C:\ \ Zastępca \ \ UploadFiles \ \ File1");
            }
            chwyt (Wyjątek x)
            {
                MessageBox.Show (sznurek. Format ("Tam  być problem the kartoteka lokalizować wewnątrz {(0)}. {(1)}", "C:\ \ Zastępca \ \ UploadFile \ \ File1", x.Message));
            }

            próba
            {
                System.IO.File.Delete ("C:\ \ Zastępca \ \ UploadScript.txt");
            }
            chwyt (Wyjątek x)
            {
                MessageBox.Show (sznurek. Format ("Tam  być problem the kartoteka lokalizować wewnątrz {(0)}. {(1)}", "C:\ \ Zastępca \ \ UploadScript.txt", x.Message));
            }
        }
        
    }
}

Odpowiedź : Dlaczego Wychodzić eventhandler System.Diagnostics.Process?

Zamieniać linia 46 z:
P.Start ();
P.WaitForExit ();
Inne rozwiązania  
 
programming4us programming4us