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.




Agora, quando selecionarmos um processo ou carregarmos o processo atual, iremos exibir no listBox2, todas as DLL’s que o mesmo utiliza. Para isso crie o seguinte método:

 

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:




É isso aí pessoal, vou ficando por aqui.

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

Ricardo Coelho