[编程实例]使用VC++ 6关闭指定窗口标题的程序
2008-12-14 13:08
381 查看
常常听说有病毒关闭杀毒软件,是枚举窗口标题来实现的,那么内幕是什么呢?
其实只需要数10行代码就可以了。
VC++6.0建立Win32 APPlication,复制下面的代码...
#include <windows.h>
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); //不要忘了
}
病毒当然比这个多点代码,它先定义一个数组,然后再弄个判断函数,判断窗口标题是否和这个数组里面的匹配,
如果有一个匹配则返回真否则返回假,然后如果真,则关闭。。。
其实只需要数10行代码就可以了。
VC++6.0建立Win32 APPlication,复制下面的代码...
#include <windows.h>
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); //不要忘了
}
病毒当然比这个多点代码,它先定义一个数组,然后再弄个判断函数,判断窗口标题是否和这个数组里面的匹配,
如果有一个匹配则返回真否则返回假,然后如果真,则关闭。。。
相关文章推荐
- 使用VC++6关闭指定窗口标题的程序的代码
- 〖Linux〗以后台方式启动/结束指定程序/命令(不受 exit 或点击窗口关闭按钮等终端退出操作的影响)
- U盘怎么拔?该设备正在使用中,请关闭可能使用该设备的所有程序或窗口
- 用python3+PyQt5改写Python Qt GUI快速编程的第6章实例主窗口 信号及槽如何使用
- 使用指定的 URL 模式和处理程序类初始化 Route 类的新实例(仅供参考,高手绕过)
- 使用Qt编辑关闭窗口程序的一些见解
- VC++通过类名获取同一程序的多个实例窗口句柄
- 使用Qt编辑关闭窗口程序的一些见解
- VC中如何关闭窗口退出程序?
- 使用Qt编辑关闭窗口程序的一些见解
- VC++如何使用Mschart 实例-------网络流量监控程序
- VC程序只运行一个实例,并在打开多个时激活原窗口
- 使用Qt编辑关闭窗口程序的一些见解
- [今天的编程日记, 在vb中使用vc编译的dll实例]
- vc 防止程序重复运行(即只运行一个实例)并激活已运行进程和枚举进程及窗口
- VC++如何使用Mschart 实例-------网络流量监控程序
- 使用java代码关闭指定端口的程序-windows
- vc多文档应用程序窗口初始化,关闭子框架,标题,动态切换
- [今天的编程日记, 在vb中使用vc编译的dll实例]
- VC程序只运行一个实例,并在打开多个时激活原窗口