CODE: [Copy to clipboard]
用 %errorlevel% 或&& 、|| 等就可以获得程序的运行成功或失败
//code by 森仔 2010.4.18
#include<windows.h>
#include<stdio.h>
#include <tlhelp32.h>
unsigned long judge_process(char *img_name);
int help_info();
int main(int argc,char *argv[])
{
char imagename[20]={0};
int flag;
if(argc!=2) return 0;
if(0==(strcmp(argv[1],"-h")))
{
help_info();
return 0;
}
flag=judge_process(argv[1]);
if(flag==-1)
{
printf("%s 没被加载运行!",imagename);
return -1;
}
else
{
printf("%s 已被加载运行!",imagename);
return 0;
}
}
unsigned long judge_process(char *img_name)
{
HANDLE process_snap =
CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if(process_snap == (HANDLE)-1)
return -1;
PROCESSENTRY32 process_enter;
process_enter.dwSize = sizeof(PROCESSENTRY32);
if(!Process32First(process_snap,&process_enter))
return -1;
do {
if(0 == strcmpi(img_name, process_enter.szExeFile))
return 0;
}while (Process32Next(process_snap,&process_enter));
if(NULL != process_snap)
CloseHandle(process_snap);
return -1;
}
int help_info()
{
char help_info[]=
"用法示例:\n"
"-h 显示此信息\n"
"prodetect qq.exe";
puts(help_info);
return 0;
}
[