[编程实例]使用VC++ 6关闭指定窗口标题的程序

来源:互联网 发布:cydia软件源2016 编辑:程序博客网 时间:2024/05/01 16:08

 常常听说有病毒关闭杀毒软件,是枚举窗口标题来实现的,那么内幕是什么呢?

 

其实只需要数10行代码就可以了。

 

VC++6.0建立Win32 APPlication,复制下面的代码...

  1. #include <windows.h>
  2. BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam);
  3. int APIENTRY WinMain(HINSTANCE hInstance,
  4.                      HINSTANCE hPrevInstance,
  5.                      LPSTR     lpCmdLine,
  6.                      int       nCmdShow)
  7. {
  8.     // TODO: Place code here.
  9.     EnumWindows(EnumWindowsProc, 0); //枚举所有窗口
  10.     return 0;
  11. }
  12. BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam) //满足指定条件,则关闭窗口
  13. {
  14.     
  15.     char  wtitle[512];
  16.     GetWindowText(hwnd, wtitle, sizeof(wtitle));
  17.     if (strstr(wtitle , "记事本")) //窗口标题含有记事本
  18.     {
  19.         ::SendMessage(hwnd, WM_CLOSE, 0, 0);
  20.     }
  21.     
  22.     return (true); //不要忘了
  23. }

 

病毒当然比这个多点代码,它先定义一个数组,然后再弄个判断函数,判断窗口标题是否和这个数组里面的匹配,

如果有一个匹配则返回真否则返回假,然后如果真,则关闭。。。

原创粉丝点击