private void bgWorker_DoWork(object sender, DoWorkEventArgs e) { try { SHGlobal.CheckFiles(bgWorker); RetestRequired = false; } catch (Exception ex) { progressUpdateDelegate td = new progressUpdateDelegate(OutputError); this.Invoke(td, new object[] { ex.Message }); //DialogResult result = MessageBox.Show(ex.Message + "\n\n이 버그를 수정한 뒤에 \"재시도\"를 누르시면 처음부터 다시 시작됩니다.", Application.ProductName, MessageBoxButtons.AbortRetryIgnore); //if (result == DialogResult.Retry) //{ // bgWorker.CancelAsync(); // RetestRequired = true; //} //else if (result == DialogResult.Abort) //{ // Environment.Exit(-1); //} } bgWorker.ReportProgress(100, Environment.NewLine + "초기화를 하고 있습니다."); }
public void progressUpdate(int bar, int value) { if( statusFooter.InvokeRequired ) { progressUpdateDelegate d = new progressUpdateDelegate(progressUpdate); statusFooter.Invoke(d, new object[]{ bar,value }); } else progressBar[bar].Value = value; //statusFooter.Refresh(); }