c语言 列出-终止系统进程

#include <stdio.h>
#include "stdafx.h"
#include <Windows.h>
#include <string.h>
#include <TlHelp32.h>

int kill(DWORD pid)
{
    HANDLE hprocess = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid);

    if(hprocess == NULL)
    {
        printf("open process error\n");
        exit(1);
    }

    if (TerminateProcess(hprocess,0))
    {
        printf("Kill process susccess\n");
        exit(1);
    }else
    {
        printf("Kill process error\n");
        exit(1);
    }
    return 0;
}

int getprocess()
{
    PROCESSENTRY32 pe32;
    pe32.dwSize = sizeof(pe32);
    HANDLE hprocess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
    if (hprocess == INVALID_HANDLE_VALUE)
    {
        printf("create tool help32 error\n");
        return -1;
    }

    BOOL BMORE = Process32First(hprocess,&pe32);
    while (BMORE)
    {
        printf("process name:%s\n",pe32.szExeFile);
        printf("process id:%u\n\n",pe32.th32ProcessID);
        BMORE = Process32Next(hprocess,&pe32);
    }
    CloseHandle(hprocess);
    return 0;
}

int main(int argc,char *argv[])
{
    if (argc < 2)
    {
        printf("[-]:Usage:%s list process\n",argv[0]);
        exit(1);
    }
    if (argc == 2 && strcmp(argv[1],"list") ==0)
    {
        getprocess();
    }

    if (argc == 3 && strcmp(argv[1],"kill") == 0)
    {
        kill(atoi(argv[2]));
    }
    return 0;
}

c语言 列出-终止系统进程,布布扣,bubuko.com

时间: 2024-08-03 03:00:30

c语言 列出-终止系统进程的相关文章

c语言 列出系统进程

#include <stdio.h> #include "stdafx.h" #include <Windows.h> #include <string.h> #include <TlHelp32.h> int getprocess() { PROCESSENTRY32 pe32; pe32.dwSize = sizeof(pe32); HANDLE hprocess = CreateToolhelp32Snapshot(TH32CS_S

gdb C语言调试工具

[简介]  ============= GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.同时GDB也具有例如ddd这样的图形化的调试端. 一般来说,GDB主要完成下面四个方面的功能: (1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. (2)可让被调试的程序在你所指定的调置的断点处停住.(断点可以是条件表达式) (3)当程序被停住时,可以检查此时你的程序中所发生的

Delphi 之 第七课 字符串操作

字符串类型 在Borland公司的Turbo Pascal和16位Delphi中,传统的字符串类型是一个字符序列,序列的头部是一个长度字节,指示当前字符串的长度.由于只用一个字节来表示字符串的长度,所以字符串不能超过255个字符.这一长度限制为字符串操作带来不便,因为每个字符串必须定长(确省最大值为255),当然你也可以声明更短的字符串以节约存储空间. 字符串类型与数组类型相似.实际上一个字符串差不多就是一个字符类型的数组,因为用[]符号,你就能访问字符串中的字符,这一事实充分说明了上述观点.

gdb基本命令(非常详细)

gdb基本命令 本文介绍使用gdb调试程序的常用命令.  主要内容:  [简介]  [举例]  [其他] [简介]  =============  GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.同时GDB也具有例如ddd这样的图形化的调试端.  一般来说,GDB主要完成下面四个方面的功能:  (1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序.  (2)可让被调试

gdb基本命令总结

本文介绍使用gdb调试程序的常用命令. 主要内容: [简介] [举例] [其他] [简介]  ============= GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.同时GDB也具有例如ddd这样的图形化的调试端. 一般来说,GDB主要完成下面四个方面的功能: (1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. (2)可让被调试的程序在你所指定的调置的断点处停

o gdb

GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.同时GDB也具有例如ddd这样的图形化的调试端. 一般来说,GDB主要完成下面四个方面的功能: (1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. (2)可让被调试的程序在你所指定的调置的断点处停住.(断点可以是条件表达式) (3)当程序被停住时,可以检查此时你的程序中所发生的事. (4)动态的改变你程序的执行环境.

GDB 第三讲

gdb基本命令 本文介绍使用gdb调试程序的常用命令. 主要内容: [简介] [举例] [其他] [简介] ============= GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.同时GDB也具有例如ddd这样的图形化的调试端. 一般来说,GDB主要完成下面四个方面的功能: (1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. (2)可让被调试的程序在你所指定的

gdb用法

转自http://blog.chinaunix.net/uid-9525959-id-2001805.html 作者:QuietHeart Email: [email protected]126.com *启动gdb $gdb 这样可以和gdb进行交互了. *启动gdb,并且分屏显示源代码: $gdb -tui 这样,使用了'-tui'选项,启动可以直接将屏幕分成两个部分,上面显示源代码,比用list方便多了.这时候使用上下方向键可以查看源代码,想要命令行使用上下键就用[Ctrl]n和[Ctrl

Cygwin--unix/linux模拟环境[转]

Cygwin是一个在windows平台上运行的类UNIX模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多有用的工具,著名的还有eCos,不过现已被Redhat收购).它对于学习UNIX/Linux操作环境,或者从UNIX到Windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用GNU工具集在Windows上进行嵌入式系统开发,非常有用.随着嵌入式系统开发在国内日渐流行,越来越多的开发者对Cygwin产生了兴趣. 1简介 Cygwin是许多软件的集合,最