Process p = new Process();
p.WaitForExit();
調用等待畫面使用
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += new DoWorkEventHandler( bw_DoWork );
bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler( bw_RunWorkerCompleted );
m_fmProgress = new fmProgress();
bw.RunWorkerAsync();
m_fmProgress.ShowDialog( this );
m_fmProgress = null;
其中m_fmProgress為窗體,妳將窗體的FormBorderStyle設為None,StartPosition設ScreenCenter,在畫面設置Label顯示內容
bw_DoWork 方法為要進行的動作
比如動態改變等待信息
m_fmProgress.lblDescription.Invoke(
(MethodInvoker) delegate()
{ m_fmProgress.lblDescription.Text = "Processing file ";
}
);
m_fmProgress窗體的lblDescription控件訪問權限要設為public
bw_RunWorkerCompleted 動作進行完做的處理
if( m_fmProgress != null )
{
m_fmProgress.Hide();
m_fmProgress = null;
}
由於窗體的ShowDialog方法本身就是等待進程,所以不加入Process管理也可以了