常常听说有病毒关闭杀毒软件,是枚举窗口标题来实现的,那么内幕是什么呢?
其实只需要数10行代码就可以了。
VC++6.0建立Win32 APPlication,复制下面的代码...
#include
BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
EnumWindows(EnumWindowsProc, 0); //枚举所有窗口
return 0;
}
BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam) //满足指定条件,则关闭窗口
{
char wtitle[512];
GetWindowText(hwnd, wtitle, sizeof(wtitle));
if (strstr(wtitle , "记事本")) //窗口标题含有记事本
{
::SendMessage(hwnd, WM_CLOSE, 0, 0);
}
return (true); //不要忘了
}
病毒当然比这个多点代码,它先定义一个数组,然后再弄个判断函数,判断窗口标题是否和这个数组里面的匹配,如果有一个匹配则返回真否则返回假,然后如果真,则关闭。
3COME考试频道为您精心整理,希望对您有所帮助,更多信息在http://www.reader8.com/exam/