用c#写了一个form的进程管理程序,最近一直就是c#和c++一起研究,所以也用
c++写了一个console的结束进程的程序,本来想实现查找等功能,但是其实都是
很简单,也就是结束进程还是比较麻烦的,所以别的功能也没有写,只写了现在
这个结束进程的程序
#include "stdafx.h"
#include "string"
#include "iostream"
#include "windows.h"
#include "tlhelp32.h"
using namespace std;
int killpro(string a)
{
//cout<<a;
PROCESSENTRY32 pe32;
pe32.dwSize =sizeof(pe32);
HANDLE hpro=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if(hpro==INVALID_HANDLE_VALUE)
{
cout<<"call function failed/n";
return 0;
}
BOOL nowrun=Process32First(hpro,&pe32);
while(nowrun)
{
if(pe32.szExeFile ==a)
{
DWORD proid=pe32.th32ProcessID;
HANDLE hprocess=::OpenProcess(PROCESS_ALL_ACCESS,FALSE,proid);
if(hprocess!=NULL)
{
::TerminateProcess(hprocess,0);
::CloseHandle(hprocess);
}
}
nowrun=::Process32Next(hpro,&pe32);
}
}
int main(int argc, char* argv[])
{
char mytext[]="Process kill";
char myver[]="1.0.0";
if(argc!=2)
{
cout<<" "<<mytext<<"/n";
cout<<" "<<myver<<"/n";
cout<<"command error!/n";
cout<<"usage: "<<argv[0]<<" processname/n";
cout<<"/n/n";
cout<<" 献给我的老婆莉莎/n";
cout<<" 程序设计:王伟/n";
return 0;
}
string getproname=argv[1];
killpro(getproname);
return 0;
}