Quick Tips: Trabalhando com processos do windows - Parte 4
Nesta quick veremos como carregar as dll’s que são utilizadas por um determinado processo do windows.
Vamos utilizar o mesmo exemplo anterior, só que agora adicione mais um listBox.

public void LoadModules(Process processo) {
//Limpa o listBox
listBox2.Items.Clear();
//Carrega os módulos usados pélo processo
ProcessModuleCollection modules = processo.Modules;
//Percorre e exibe no listBox
foreach(ProcessModule m in modules){
listBox2.Items.Add(m.ModuleName);
}
}
E adicione a chamada a este método ao final do método LoadInfoProcess, que ficará assim:
public void LoadInfoProcess(Process processo) {
label2.Text = "Estado do processo: " + GetProcessState(processo).ToString();
label3.Text = "Nome do processo: " + processo.ProcessName;
label4.Text = "Prioridade do processo: " + processo.PriorityClass.ToString();
label5.Text = "Arquivo de execução: " + processo.StartInfo.FileName;
label6.Text = "Total de memória física: " + (processo.WorkingSet64 / 1024).ToString("d");
label7.Text = "Total de memória virtual: " + (processo.VirtualMemorySize64 / 1024).ToString("d");
label8.Text = "Tempo de processamento: " + processo.TotalProcessorTime.ToString();
label9.Text = "Pico de consumo de memória física: " + processo.PeakWorkingSet64.ToString("d");
label10.Text = "Pico de consumo de memória virtual: " + processo.PeakVirtualMemorySize64.ToString("d");
label11.Text = "Mínimo permitido de consumo de memória: " + processo.MinWorkingSet.ToString();
label12.Text = "Máximo permitido de consumo de memória: " + processo.MaxWorkingSet.ToString();
LoadModules(processo);
}
O resultado agora é o seguinte:

Fiquem a vontade para criticar, tirar dúvidas e sugerir novos temas.
Abraço.
Ricardo Coelho