2011-11-25 49 views
-1

我想爲壓縮機編寫一個自定義的gui。C#運行帶進度條的程序來壓縮列表框項目

如何在所有添加到列表框中的文件上運行命令行界面? 另外如何顯示進度條顯示當前進度(不是以%表示,但至少是當前正在處理的文件)。

+0

你正在使用什麼壓縮程序? – Nasreddine

+2

你的問題是什麼?每個人都能從答案中看到不同的理解。 –

回答

1

如果你正在談論的只是運行一個命令行程序,你可以使用System.Diagnostic.Process。

System.Diagnostics.Process p = new System.Diagnostics.Process(); 

p.StartInfo.FileName = @"c:\path\to\my.exe"; 
p.StartInfo.Arguments = @"c:\path\to\filetoCompress.file"; 
//event wireup 

p.Exited += new EventHandler(p_exited); 
p.Start(); 

至於該顯示進度,你可以使用過程中的Exited事件要連接到一個下載進度條,顯示加長與數總數的進展。

void p_Exited(object sender, EventArgs e) 
{ 
    //assuming you have setup this bar previously. 
    pbFilesCommpressProgress.PerformStep(); 
} 
+0

但是如何設置命令行應用程序來處理添加到列表框中的文件? – user830054

+0

它取決於命令行應用程序以及需要傳遞給它的參數。您將設置一個循環來遍歷列表框的元素。這應該是循環的內部部分,即進程的設置,命令行參數以及安裝後運行進程。如果沒有上下文的代碼,我不能提供太多的代碼。 –

0

在CLI中,您可以使用許多ASCII字符之一,如|||或...然後你可以將它們追加爲文件進度..或者你可以表示(文件x的xxx),並告知用戶進程發生的進度。