2017-03-19 40 views
2

我正在創建一個應用程序,當按下按鈕時,它將顯示當前正在運行的進程的列表,並在其旁邊顯示其圖標。C#如何使用ListBox中的圖標顯示進程

private void materialFlatButton6_Click_1(object sender, EventArgs e) 
    { 

Process[] process = Process.GetProcesses(); 
     foreach (Process prs in process) 
     { 
      listBox1.Items.Add(prs.ProcessName + "   (" + prs.PrivateMemorySize64.ToString() + ")"); 
     } 
    } 

這是當前的代碼本和它這樣做。

enter image description here

但我想讓它顯示了這個樣子。

enter image description here

我將如何呈現的圖標,列表框?

回答

3

這裏是如何得到進程的相關圖標:

Process[] processes = Process.GetProcesses(); 
foreach(var thisProcess in processes) 
{ 
    Icon ico = Icon.ExtractAssociatedIcon(thisProcess.MainModule.FileName); 
} 

如果我是你,我會用一個ListView,而不是因爲有listview顯示圖標要容易得多。

+0

附加信息:訪問被拒絕。錯誤。我意識到這將意味着這將不得不以管理員權限運行,並且這真的是我必須放棄才能添加圖標? –

+0

抱歉,您需要自行研究相關權限。您的問題是關於如何獲取圖標,這就是您如何獲得流程的關聯圖標。也許問另一個有關權限的問題,也許系統管理員或某人會幫助你。 – CodingYoshi

+0

即使與管理員。您無法在64位計算機上運行32位錯誤。 –

相關問題