#include <iostream>
#include <windows.h>
#include <tlhelp32.h>
#include <stdio.h>
using namespace std;
DWORD GetProcessIdFromName(LPCTSTR name) //通过执行文件名获得进程ID的方法
{
PROCESSENTRY32 pe;
DWORD id = 0;
HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pe.dwSize = sizeof(PROCESSENTRY32);
if( !Process32First(hSnapshot,&pe) )
return 0;
do
{
pe.dwSize = sizeof(PROCESSENTRY32);
if( Process32Next(hSnapshot,&pe)==FALSE )
break;
if(strcmp(pe.szExeFile,name) == 0)
{
id = pe.th32ProcessID;
break;
}
} while(TRUE);
CloseHandle(hSnapshot);
return id;
}
int main()
{
DWORD dwQQID = GetProcessIdFromName("QQ.exe");
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwQQID); //打开进程
if(hProcess)
{
TerminateProcess(hProcess, 0); //关闭进程
}
CloseHandle(hProcess);
return 0;
}
#include <windows.h>
#include <tlhelp32.h>
#include <stdio.h>
using namespace std;
DWORD GetProcessIdFromName(LPCTSTR name) //通过执行文件名获得进程ID的方法
{
PROCESSENTRY32 pe;
DWORD id = 0;
HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pe.dwSize = sizeof(PROCESSENTRY32);
if( !Process32First(hSnapshot,&pe) )
return 0;
do
{
pe.dwSize = sizeof(PROCESSENTRY32);
if( Process32Next(hSnapshot,&pe)==FALSE )
break;
if(strcmp(pe.szExeFile,name) == 0)
{
id = pe.th32ProcessID;
break;
}
} while(TRUE);
CloseHandle(hSnapshot);
return id;
}
int main()
{
DWORD dwQQID = GetProcessIdFromName("QQ.exe");
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwQQID); //打开进程
if(hProcess)
{
TerminateProcess(hProcess, 0); //关闭进程
}
CloseHandle(hProcess);
return 0;
}