有沒有人知道如何顯示使用chilkat時提取檔案的進度?我的表單上已經有一個名爲「progressBar1」的進度條。目前整個程序在提取開始時凍結。也許有另一個線程? 我使用這個代碼:使用chilkat通過進度條提取RAR文件?
Chilkat.Rar rar = new Chilkat.Rar();
bool success;
success = rar.Open("abc123.rar");
if (success != true) {
MessageBox.Show(rar.LastErrorText);
return;
}
success = rar.Unrar("c:/temp/unrarDest/");
if (success != true) {
MessageBox.Show(rar.LastErrorText);
}
else {
MessageBox.Show("Success.");
}
如果任何人有任何其他的方式來解壓.rar文件,這將是巨大的瞭解。
謝謝。
謝謝Tom Cabanski和Chris Tybur。我現在使用BackgroundWorker組件工作,並通過使用「backgroundWorker1.RunWorkerAsync();」來調用它。還沒有想出如何使進度條工作。 – 2010-04-24 16:20:17
我對chilkat瞭解不多,但是如果該庫可以以某種方式在從存檔中提取UnRar方法時生成狀態事件,則可以處理這些事件並調用BackgroundWorker組件的ReportProgress方法。在你的表單中,你將會處理BackgroundWorker的ProgressChanged事件,並且在那個處理程序中你會增加你的進度條。有關更多信息,請參閱http://stackoverflow.com/questions/614111/running-class-as-new-thread。 – 2010-04-24 16:37:11