当前位置: 首页 > news >正文

wordpress返利主题竞价推广和seo的区别

wordpress返利主题,竞价推广和seo的区别,珠海做网站的,做网站公司推荐Windows模拟电脑假死之键盘鼠标无响应 1. 场景需求 模拟Windows电脑假死,失去键盘鼠标响应。 2. 解决方案 采用Windows系统提供的钩子(Hook) API 拦截系统鼠标键盘消息。 3. 示例程序 【1】. 创建MFC对话框项目 新建一个MFC应用程序项目,项目名称…

Windows模拟电脑假死之键盘鼠标无响应

1. 场景需求

模拟Windows电脑假死,失去键盘鼠标响应。

2. 解决方案

采用Windows系统提供的钩子(Hook) API 拦截系统鼠标键盘消息。

3. 示例程序

【1】. 创建MFC对话框项目

新建一个MFC应用程序项目,项目名称取名为 "FakeDeath" ,如下图所示:

在这里插入图片描述

应用程序类型,选择【基于对话框】项目。

在这里插入图片描述

其余配置选项,默认即可。

创建完成。

在这里插入图片描述

【2】. 编译并运行程序

右键项目名称,选择【生成】。

在这里插入图片描述

运行程序。

在这里插入图片描述

【3】. 编辑对话框

调取《资源视图》界面,编辑对话框控件。

在这里插入图片描述

在这里插入图片描述

双击【键盘鼠标假死】按钮,向导会自动进入到对应按钮的处理函数上。

在这里插入图片描述

【4】. 添加键盘鼠标系统钩子

键盘鼠标系统钩子代码如下:

/*------------------------------------开始添加键盘鼠标系统钩子代码--------------------------------*///鼠标钩子句柄;
HHOOK g_hMouseHook = nullptr;
//键盘钩子句柄;
HHOOK g_hKeyboardHook = nullptr;//安装钩子;
void InstallSysHook();
//卸载钩子;
void UninstallSysHook();//键盘钩子处理函数;
static LRESULT CALLBACK OnKeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam);
//鼠标钩子处理函数;
static LRESULT CALLBACK OnMouseHookProc(int nCode, WPARAM wParam, LPARAM lParam);/
/
/
void InstallSysHook()
{g_hMouseHook = SetWindowsHookEx(WH_MOUSE_LL, OnMouseHookProc, GetModuleHandleA(0), 0);g_hKeyboardHook = SetWindowsHookEx(WH_KEYBOARD_LL, OnKeyboardHookProc, GetModuleHandleA(0), 0);
}void UninstallSysHook()
{if (g_hKeyboardHook){UnhookWindowsHookEx(g_hKeyboardHook);}if (g_hMouseHook){UnhookWindowsHookEx(g_hMouseHook);}
}LRESULT CALLBACK OnKeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam)
{if (nCode == HC_ACTION){// 【A】键盘按下时程序结束KBDLLHOOKSTRUCT *ks = (KBDLLHOOKSTRUCT*)lParam;if (ks->vkCode == 'A'){UninstallSysHook();exit(0);}}// return CallNextHookEx(g_hKeyboardHook, nCode, wParam, lParam);return 1;
}LRESULT CALLBACK OnMouseHookProc(int nCode, WPARAM wParam, LPARAM lParam)
{if (nCode == HC_ACTION){// 处理鼠标消息;// ...}// return CallNextHookEx(g_hMouseHook, nCode, wParam, lParam);return 1;
}/*-----------------------------------键盘鼠标系统钩子添加结束--------------------------------*/

FakeDeathDlg.cpp源文件修改如下

// FakeDeathDlg.cpp : 实现文件
//#include "stdafx.h"
#include "FakeDeath.h"
#include "FakeDeathDlg.h"
#include "afxdialogex.h"#ifdef _DEBUG
#define new DEBUG_NEW
#endif// 用于应用程序“关于”菜单项的 CAboutDlg 对话框class CAboutDlg : public CDialogEx
{
public:CAboutDlg();// 对话框数据enum { IDD = IDD_ABOUTBOX };protected:virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持// 实现
protected:DECLARE_MESSAGE_MAP()
};CAboutDlg::CAboutDlg() : CDialogEx(CAboutDlg::IDD)
{
}void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{CDialogEx::DoDataExchange(pDX);
}BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
END_MESSAGE_MAP()// CFakeDeathDlg 对话框CFakeDeathDlg::CFakeDeathDlg(CWnd* pParent /*=NULL*/): CDialogEx(CFakeDeathDlg::IDD, pParent)
{m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}void CFakeDeathDlg::DoDataExchange(CDataExchange* pDX)
{CDialogEx::DoDataExchange(pDX);
}BEGIN_MESSAGE_MAP(CFakeDeathDlg, CDialogEx)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_BTN_INSTALL, &CFakeDeathDlg::OnBnClickedBtnInstall)
END_MESSAGE_MAP()// CFakeDeathDlg 消息处理程序BOOL CFakeDeathDlg::OnInitDialog()
{CDialogEx::OnInitDialog();// 将“关于...”菜单项添加到系统菜单中。// IDM_ABOUTBOX 必须在系统命令范围内。ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL){BOOL bNameValid;CString strAboutMenu;bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);ASSERT(bNameValid);if (!strAboutMenu.IsEmpty()){pSysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);}}// 设置此对话框的图标。  当应用程序主窗口不是对话框时,框架将自动//  执行此操作SetIcon(m_hIcon, TRUE);			// 设置大图标SetIcon(m_hIcon, FALSE);		// 设置小图标// TODO:  在此添加额外的初始化代码return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}void CFakeDeathDlg::OnSysCommand(UINT nID, LPARAM lParam)
{if ((nID & 0xFFF0) == IDM_ABOUTBOX){CAboutDlg dlgAbout;dlgAbout.DoModal();}else{CDialogEx::OnSysCommand(nID, lParam);}
}// 如果向对话框添加最小化按钮,则需要下面的代码
//  来绘制该图标。  对于使用文档/视图模型的 MFC 应用程序,
//  这将由框架自动完成。void CFakeDeathDlg::OnPaint()
{if (IsIconic()){CPaintDC dc(this); // 用于绘制的设备上下文SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);// 使图标在工作区矩形中居中int cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;// 绘制图标dc.DrawIcon(x, y, m_hIcon);}else{CDialogEx::OnPaint();}
}//当用户拖动最小化窗口时系统调用此函数取得光标
//显示。
HCURSOR CFakeDeathDlg::OnQueryDragIcon()
{return static_cast<HCURSOR>(m_hIcon);
}/*---------------------------------开始添加键盘鼠标系统钩子代码-----------------------------------*///鼠标钩子句柄;
HHOOK g_hMouseHook = nullptr;
//键盘钩子句柄;
HHOOK g_hKeyboardHook = nullptr;//安装钩子;
void InstallSysHook();
//卸载钩子;
void UninstallSysHook();//键盘钩子处理函数;
static LRESULT CALLBACK OnKeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam);
//鼠标钩子处理函数;
static LRESULT CALLBACK OnMouseHookProc(int nCode, WPARAM wParam, LPARAM lParam);/
/
/
void InstallSysHook()
{g_hMouseHook = SetWindowsHookEx(WH_MOUSE_LL, OnMouseHookProc, GetModuleHandleA(0), 0);g_hKeyboardHook = SetWindowsHookEx(WH_KEYBOARD_LL, OnKeyboardHookProc, GetModuleHandleA(0), 0);
}void UninstallSysHook()
{if (g_hKeyboardHook){UnhookWindowsHookEx(g_hKeyboardHook);}if (g_hMouseHook){UnhookWindowsHookEx(g_hMouseHook);}
}LRESULT CALLBACK OnKeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam)
{if (nCode == HC_ACTION){// 【A】键盘按下时程序结束KBDLLHOOKSTRUCT *ks = (KBDLLHOOKSTRUCT*)lParam;if (ks->vkCode == 'A'){UninstallSysHook();exit(0);}}// return CallNextHookEx(g_hKeyboardHook, nCode, wParam, lParam);return 1;
}LRESULT CALLBACK OnMouseHookProc(int nCode, WPARAM wParam, LPARAM lParam)
{if (nCode == HC_ACTION){// 处理鼠标消息;// ...}// return CallNextHookEx(g_hMouseHook, nCode, wParam, lParam);return 1;
}/*--------------------------------------键盘鼠标系统钩子添加结束--------------------------------*/// 键盘鼠标假死按钮处理函数
void CFakeDeathDlg::OnBnClickedBtnInstall()
{// 安装系统钩子;InstallSysHook();
}

【5】. 运行效果

点击【鼠标键盘假死】按钮后,桌面进入假死状态,除了【Ctrl+Alt+Delete】和【A】键外,其他键盘和鼠标输入均不响应。

在这里插入图片描述

http://www.mmbaike.com/news/56817.html

相关文章:

  • 网站开发的流程图和原型图廊坊seo整站优化
  • 网站改版 收录免费的网页制作软件
  • 怎么做自己的一个网站武汉新一轮疫情
  • 广东网站建设包括什么软件重庆营销型网站建设公司
  • 电商网站开发方案seo优化关键词
  • 曰本真人做爰下载网站廊坊seo整站优化
  • 网站建设更新在线排名优化工具
  • 江西新余渝水区疫情最新情况windows优化大师兑换码
  • 免费b2b网站大全全职高手提高seo排名
  • 唐山专业网站建设苏州百度搜索排名优化
  • 大连建站平台如何让别人在百度上搜到自己公司
  • 邯郸品牌策划设计seo技术优化
  • 南京做网站的公司有哪些做网站怎么做
  • 惠州微网站推广方案如何自己开发一个平台
  • 人才网官方网站百度有效点击软件
  • 极速网站建设免费引流推广方法
  • 西餐厅网站模板推广引流哪个软件最好
  • 免费做电子相册的网站怎么写软文推广
  • 医院做网站的费用多少媒介星软文平台
  • 网站开发后台需要哪些技术创意营销策划方案
  • asp网站搭建软件艾滋病多长时间能查出来
  • 网站开发软件开发怎么样广东省人大常委会
  • 内容相同的 网站seo搜索引擎优化是什么
  • 综合网站建设广州优化营商环境条例
  • 英语网站建设汕头seo排名公司
  • 事业单位网站建设方案文案短句干净治愈
  • 成都网站建设培训学校114网址大全
  • 个人网站设计需求分析软文代写发布
  • 做外贸出口衣服的网站百度首页排名优化多少钱
  • 自己怎么做企业网站百度百度一下就知道