扫描进程

强制退出QQ的程序软件

#include <iostream>
#include <stdio.h>
#include <string>
#include <windows.h>
#include <tlhelp32.h>
using namespace std;

string str_exp="explorer.exe";
string str_qq="QQ.exe";
bool TerminateProcessFromId(long Id)
{
    bool bRet = false ;
    //打开目标进程,取得进程句柄
    HANDLE hProcess = ::OpenProcess(PROCESS_ALL_ACCESS,false,Id);
    if(hProcess != NULL)
    {
        //终止进程!
        bRet = ::TerminateProcess(hProcess,0);
    }
    CloseHandle(hProcess);
    return bRet;
}
void Find_Exit(long Id)
{
    bool i=TerminateProcessFromId(Id); //传递所要关闭的进程Id
    if(i)
        cout<<"让你们这些蠢货天天上QQ"<<endl;
    else
        cout<<"失败!!"<<endl;
}
void ProcessControl()
{
    PROCESSENTRY32 pe32;
    //使用这个结构前,设置他的大小
    pe32.dwSize=sizeof(pe32);
    //给系统内所有的程序一个快照
    HANDLE hProccessSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
    if(hProccessSnap == INVALID_HANDLE_VALUE)
    {
       // printf("CreateToolhelp32Snapshot 调用失败!!\n");
        return ;
    }
    //遍历进程快照,轮流显示每个进程的信息
    BOOL bMore = ::Process32First(hProccessSnap,&pe32);
    while(bMore)
    {
        //printf("进程名称: %s\n",pe32.szExeFile);
        //printf("进程ID号: %u\n\n",pe32.th32ProcessID);
        while(str_qq == pe32.szExeFile)
        {
            Find_Exit(pe32.th32ProcessID);
        }
        bMore = ::Process32Next(hProccessSnap,&pe32);
    }
    //清除 snapshot 对像!
    ::CloseHandle(hProccessSnap);
    return ;
}

int main()
{
    ProcessControl();
    return 0;
}
时间: 2024-10-17 14:23:49

扫描进程的相关文章

Qt 扫描进程列表以及获取进程信息

使用方法: QMap<QString,qint64> app_pid; getAllAppPidList( app_pid ); #include <tlhelp32.h>// for CreateToolhelp32Snapshot #include <Psapi.h> // for GetModuleFileNameEx #define FORMAT_PATH(path) path.replace('\\','/').toLower() QString GetPat

扫描进程内存恶意域名信息

过年也没法阻挡写代码的热情. 场景 上机检查恶意木马. 功能截图 原文地址:https://www.cnblogs.com/17bdw/p/10356980.html

Ossim 中漏洞扫描详解

Ossim 中漏洞扫描详解 Openvas是一套开源漏洞扫描系统,如果手动搭建需要复杂的过程,花费不少人力和时间成本,此文主要针对OSSIM平台下如何以图形化方式操作漏洞扫描的过程. 准备工作:首先确保没有运行的扫描进程和任务 扫描漏洞同时升级漏洞库会导致升级失败. 第一步:同步插件 #openvas-nvt-sync 同步数万个插件时间比较长,可以去喝杯咖啡啦,或者了解一下插件的组成. 表1 Openvas主要脚本分类及分布情况 规则名称 数量 备注 IIS_frontpage_DOS_2.n

脚本应用之四: 批量端口扫描

作用:批量端口扫描,可根据扫描主机的配置调整后台扫描进程数量 实现:使用nc指令扫描端口, 使用管道特性控制后台扫描进程数量 不足:仅仅对扫描端口状态为down的信息做记录,并没有其他报警操作 使用:需要提供包含被扫描主机的ip地址.协议和端口号的配置文件(格式见演示或代码专区注释) 演示:

Linux内核剖析 之 进程地址空间(二)

//接前一章,本节主要介绍线性区以及相关线性区的操作. 线性区 Linux通过类型为vm_area_struct的对象实现线性区. vm_area_struct: struct vm_area_struct { struct mm_struct * vm_mm; /* The address space we belong to. */ unsigned long vm_start; /* Our start address within vm_mm. */ unsigned long vm_e

基于OSSIM平台的漏洞扫描详解

Ossim 中漏洞扫描详解 本文是<Unix/Linux网络日志分析与流量监控分析>一书的补充内容 准备工作:首先确保没有运行的扫描进程和任务 扫描漏洞同时升级漏洞库会导致升级失败. 第一步:同步插件 #openvas-nvt-sync 第二步:更新插件 #perl /usr/share/ossim/scripts/vulnmeter/updateplugins.pl migrate 2015-09-07 07:27:33   Framework profile has been found.

进程—进程描述符展开

进程-从进程描述符展开(一) 进程内核栈结构:union task_union 在../include/linux/sched.h中定义了如下一个联合结构用来创建内核栈空间. //../include/linux/sched.h union task_union { struct thread_info thread_info; unsigned long stack[THREAD_SIZE/sizeof(long)]; }: 线程描述符:struct thread_info 每一个进程都有一个

操作系统 - Linux进程实现的内部结构

在进程描述符中进入几个字段来表示进程之间的父子关系和兄弟关系. 图3-4显示了一组进程间的亲属关系. 表3-4:建立非亲属关系的进程描述符字段 在某些情况下,内核必须能从进程的PID到处对应的进程描述符指针,顺序扫描进程链表并检查进程描述符的pid字段是可行但相当低效的.为了加速查找,引入了4个散列表.需要4个散列表是因为进程描述符包含了表示不同类型PID的字段,而且每种类型PID需要它自己的散列表. 散列函数并不能总能确保PID与表的索引一一对应.两个不同的PID散列(hash)到相同的表索引

用C#实现通用守护进程

1. 下载 源码下载:http://pan.baidu.com/s/1vqDA2 安装包下载:http://pan.baidu.com/s/1sjmEB0p 2. 安装注意事项 在配置档中配置你要守护的应用程序,应用程序之间用逗号隔开 <?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="ProcessAddr