读书人

小弟我想做一个能定时关掉指定程序的c

发布时间: 2012-03-25 20:55:16 作者: rapoo

我想做一个能定时关掉指定程序的c语言程序
我想做一个能定时关掉指定程序的c语言程序,比如说30分钟后关掉搜狗浏览器。谁能告诉我该怎么做呀?

[解决办法]
找到你要关闭进程的句柄,然后通过该句柄关闭之

C/C++ code
查找进程函数定义DWORD GetProcessVid(TCHAR* lpName){    HANDLE         hProcessSnap = NULL;    BOOL           bRet      = FALSE;    PROCESSENTRY32 pe32      = {0};    if(!lpName)    {        return 0;    }        hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);     if (hProcessSnap == INVALID_HANDLE_VALUE)        return 0;        pe32.dwSize = sizeof(PROCESSENTRY32);        if (Process32First(hProcessSnap, &pe32))    {          do        {            if(wcscmp(_wcsupr(pe32.szExeFile),_wcsupr(lpName)) == 0)            {                CloseHandle (hProcessSnap);                return pe32.th32ProcessID;            }        }        while (Process32Next(hProcessSnap, &pe32));        bRet = 0;    }    else        bRet = 0;        CloseHandle (hProcessSnap);    return bRet;}////////////通过进程名称结束进程的代码,例如要结束记事本“notepad.exe”,如下:    TCHAR tmp[MAX_PATH];    memset(tmp,0,MAX_PATH);    wcscpy(tmp,_T("notepad.exe"));    DWORD pid = GetProcessVid(tmp);    if (pid != 0)    {        HANDLE hprocess=OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid);        if (hprocess != NULL)        {            TerminateProcess(hprocess,0);            CloseHandle(hprocess);        }    }
[解决办法]
C/C++ code
#include <stdlib.h>#include <stdio.h>#include <windows.h>int i;void main() {    for (i=1800;i>0;i--) {        printf("%02d:%02d\n",i/60;i%60);        Sleep(1000);    }    system("taskkill /IM sogouexplorer.exe");} 

读书人网 >C语言

热点推荐