Ir ao conteúdo

Posts recomendados

Postado

Olá, estou com um pequeno problema preciso fazer um programa que mostre os processos do computador me C, porém não faço a menor ideia de por onde começar, ouvi dizer que a uma função na biblioteca windows.h  faz esse essa leitura se alguém puder ajudar com a lista dos comandos das funções dessa library ou se souber que função seria ou com qualquer coisa relacionada ao assunto eu agradeço.

  • Curtir 1
Postado

EnumProcess, pelo que lembro, ela não retorna o nome do processo somente o PID. uma boa biblioteca que controla esse tipo de função é há PSAPI procure pela lista de funções dela no google que você vai conseguir realizar seu projeto! 

  • Curtir 2
Postado
6 minutos atrás, Anonymous Programmer disse:

EnumProcess, pelo que lembro, ela não retorna o nome do processo somente o PID. uma boa biblioteca que controla esse tipo de função é há PSAPI procure pela lista de funções dela no google que você vai conseguir realizar seu projeto! 

vou pesquisar aqui muito obrigado.

 

  • Curtir 1
Postado

Da pra listar os processos do Windows digitando o comando "TASKLIST" no CMD.

Postado
17 horas atrás, CiroboyBR disse:

Da pra listar os processos do Windows digitando o comando "TASKLIST" no CMD.

obrigado pela ajuda acho que dessa forma vai ser mais simples de trabalhar como eu tenho que encerrar um eu posso usar o TASKKILK, estou utilizando o dev então posso fazer isso de forma simples

adicionado 14 minutos depois

obrigado pela ajuda pessoal ainda não irei encerrar o tópico por que posso precisar de ajuda mas já tenho um esboço do que pretendo fazer 

int main(){
    int pid;
    char cmd[256];

    //printa na tela os processos do pc
    system("TASKLIST");
    //le do teclado o pid do processo a ser encerrado
    printf("digite o pid programa que deseja encerrar\n");
    scanf("%d",&pid);

    //grava no vetor cmd a string com o comando TASKKILL mais o número do pid
    digitado pelo usuario
    sprintf(cmd,"TASKKILL /PID %d",pid);
    //retorna a string do vetor para dentro da função system
    system(cmd);
    system("pause");
}

 

assim ele atende ao básico do que pretendo fazer, mas eu sou iniciante em programação e pode conter erros e "nubice", por isso toda crítica e conselho será bem vindo, mais uma vez obrigado a todos.

  • Membro VIP
Postado

Não é bem erro, mas assim você está "roubando" rsrs. Isso porque seu programa em C chama o comando tasklist, e este faz o trabalho. Imagino que o seu professor tenha pedido é pra usar a Windows.h, como o início do tópico sugere e se você entregar assim, pode ganhar zero porque não fez o que ele pediu ou 10 por ter "pensado fora da caixa", não sei. rs

 

Um exemplo de uso da EnumProcesses() pode ser visto aqui. Veja que ela não resolve tudo, é preciso mais código para de fato imprimir uma lista com nomes e PIDs dos processos. Tem mais sobre o assunto em Process Enumeration.

 

Abraços!

  • Curtir 1
Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!