非凡首页|软件资讯|最新更新|下载排行|软件分类|软件专题
您当前位置: 下载首页应用软件键盘鼠标operatereg.exe【C++】

operatereg.exe【C++】 v2.47 键盘鼠标

  • 软件等级:3 stars.
  • 软件大小:931.83KB
  • 支持语言:简体中文
  • 授权方式:免费版
  • 软件分类:应用软件/键盘鼠标
  • 官网链接:
  • 更新时间:2025-05-19 08:12:05
  • 运行环境:WinXp,Win2003,WinVista,Win 7,Win 8,Win 10,x64
  • 厂商:
关 键 字:
软件介绍 软件截图 软件专题 软件问答 相关文章 相关软件 下载地址

平时使用电脑的时候总是不小心碰到不该点的按键导致误操作怎么办?今天小编带来的这款operatereg.exe【C++】可以帮助我们解决这个问题!软件能够帮助用户开启笔记本电脑的禁用功能,从而让使用的时候禁用某些键盘功能,需要用管理员身份运行,重启计算机之后就可以实现了!

软件说明

之所以写这个程序,是因为宿舍桌子太小。有时把外接键盘叠在笔记本键盘上,容易误触到笔记本键盘,从而导致一些莫名其妙的问题困扰自己。

于是找了些资料了解到了如何禁用笔记本键盘的方法:

+ 禁用设备法。详细教程请点击 [这里](https://jingyan.baidu.com/article/77b8dc7fb9aa336175eab674.html)

+ 修改注册表法。详细教程请点击 [这里](https://www.52pojie.cn/thread-1445700-1-2.html)

可能会有人问:为什么不省事点选用禁用设备法,而是写代码再来操作注册表,来禁用键盘这么麻烦的方法呢?原因很简单,突然对编程语言操作注册表很感兴趣,就这么做了。

使用说明

工具需要以管理员方式启动

特别声明

+由于修改注册表后,需要重启电脑后才能生效。所以代码中加入了询问“是否立刻重启”的语句

源码说明

#include

#include

#include

using namespace std;

void write_dword();

//测试成功,读取到start的当前值//读取操作表,其类型为DWORD

void read_dword(){

HKEY hKEY;//定义有关的键,在查询结束时关闭

//打开与路径data_Set相关的hKEY

char i,x;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt");

//访问注册表,hKEY则保存此函数所打开的键的句柄

if (ERROR_SUCCESS == ::RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_READ, &hKEY)){

DWORD dwValue;//长整型数据,如果是字符串数据用char数组

DWORD dwSize = sizeof(DWORD);

DWORD dwType = REG_DWORD;

if (::RegQueryValueEx(hKEY, _T("Start"), 0, &dwType, (LPBYTE)&dwValue, &dwSize) != ERROR_SUCCESS)

cout << "错误:无法查询有关的注册表信息" << endl;

switch (dwValue){

case 3:

cout << "当前笔记本键盘状态为:启用 " << "(" << hex << dwValue << ")" << endl << endl << "若需要禁用请输入字母:y或Y" << endl;

cin >> i;

if (i == 'y'|| i == 'Y') {

write_dword();

}

break;

case 4:

cout << "当前笔记本键盘状态为:禁用 " << "(" << hex << dwValue << ")" << endl << endl << "若需要启用请输入字母:y或Y" << endl;

cin >> x;

if (x == 'y' || x == 'Y') {

write_dword();

}

break;

default:

cout << "当前笔记本键盘状态获取未知 " << "(" << hex << dwValue << ")" << endl << endl;

break;

}

}

::RegCloseKey(hKEY);

}

//测试成功,读取到start设备名displayname//读取操作表,其类型为REG_SZ

void read_reg_sz(){

HKEY hkey;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt");

if (ERROR_SUCCESS == ::RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_READ, &hkey)){

char dwValue[256];

DWORD dwSzType = REG_SZ;

DWORD dwSize = sizeof(dwValue);

if (::RegQueryValueEx(hkey, _T("DisplayName"), 0, &dwSzType, (LPBYTE)&dwValue, &dwSize) != ERROR_SUCCESS){

cout << "无法查询有关的注册表信息" << endl << endl;

}

cout << "当前设备名:" << dwValue << endl << endl;

}

::RegCloseKey(hkey);

}

//测试成功,更改(创建)到start键值//在SYSTEM⁄CurrentControlSet⁄Services⁄i8042prt文件夹下读取Start的子键,设置其值为dwValue

void write_dword(){

HKEY hkey;//定义有关的hkey,在查询结束时要关闭

HKEY hTempKey;

char ans;

int flag;

DWORD dwValue;

DWORD dwSize = sizeof(DWORD);

DWORD dwType = REG_DWORD;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt");

cout << "请设置当前笔记本键盘状态,输入数字:3,表示开启键盘;输入数字4,表示禁用键盘;" << endl;

cin >> flag;

switch (flag) {

case 3:

dwValue = flag; break;

case 4:

dwValue = flag; break;

default:

cout << "状态值输入错误" << endl; break;

}

if (ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_SET_VALUE, &hkey)){

//if (ERROR_SUCCESS == ::RegCreateKey(hkey, _T("解开该段落注释,则可更改为:在SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt下,创建以'该文本内容'为名称的子健,并创建一个名为“Start”的子健,其值为:dwValue"), &hTempKey)){

if (ERROR_SUCCESS != ::RegSetValueEx(hkey, _T("Start"), 0, REG_DWORD, (CONST BYTE*) & dwValue, sizeof(DWORD))){

cout << "写入注册表失败" << endl;

}

cout << "修改成功!" << endl << "是否立刻重启电脑,使设置立即生效?" << endl << "输入y或Y,以立刻重新启动电脑;输入n或N退出程序" << endl;

cin >> ans;

if (ans == 'y' || ans == 'Y') {

cout << "再次确认,要立刻重启电脑吗?⁄n⁄n输入y或Y,以立刻重新启动电脑;输入n或N退出程序" << endl;

cin >> ans;

if (ans == 'y' || ans == 'Y')

system("shutdown -r -t 0");

}

else

exit(1);

//}

}

::RegCloseKey(hkey);

}

//测试成功,更改(创建)子键test111及其键值项Name到start键值

void write_binary(){

HKEY hkey;

HKEY hTempKey;

BYTE m_name[10];

memset(m_name, 0, sizeof(m_name));

m_name[0] = 0xff;

m_name[1] = 0xac;

m_name[2] = 0x05;

m_name[3] = 0x4e;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt");

if (ERROR_SUCCESS == ::RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_SET_VALUE, &hkey)){

if (ERROR_SUCCESS == ::RegCreateKey(hkey, _T("test111"), &hTempKey)){

if (ERROR_SUCCESS != ::RegSetValueEx(hTempKey, _T("Name"), 0, REG_BINARY, (unsigned char*)m_name, 5)){

cout << "写入错误" << endl;

}

}

}

::RegCloseKey(hkey);

}

//测试成功,更改(创建)子键test111及其键值项Name到start键值

void write_reg_sz(){

HKEY hkey;

HKEY hTempKey;

char m_name_set[256] = "China";

DWORD len = strlen(m_name_set) + 1;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt");

if (ERROR_SUCCESS == ::RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_SET_VALUE, &hkey)){

if (ERROR_SUCCESS == ::RegCreateKey(hkey, _T("test111"), &hTempKey)){

if (ERROR_SUCCESS != ::RegSetValueEx(hTempKey, _T("Name"), 0, REG_SZ, (const BYTE*)m_name_set, len)){

cout << "写入错误" << endl;

}

}

}

::RegCloseKey(hkey);

}

//测试成功,将键值项Name删除

void delete_value()

{

HKEY hkey;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt⁄⁄test111");

if (ERROR_SUCCESS == ::RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_SET_VALUE, &hkey))

{

if (ERROR_SUCCESS != ::RegDeleteValue(hkey, _T("Name")))

{

cout << "删除错误" << endl;

}

}

::RegCloseKey(hkey);

}

//测试成功,将子键test111删除

void delete_key(){

HKEY hkey;

LPCTSTR data_set = _T("SYSTEM⁄⁄CurrentControlSet⁄⁄Services⁄⁄i8042prt");

if (ERROR_SUCCESS == ::RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_set, 0, KEY_SET_VALUE, &hkey)){

if (ERROR_SUCCESS != ::RegDeleteKey(hkey, "test111")){

cout << "删除错误" << endl;

}

}

::RegCloseKey(hkey);

}

void menu(){

cout << "欢迎使用本工具" << endl << endl;

read_reg_sz();

cout << endl << "已为您查询到该笔记本当前键盘状态为:" ;

read_dword();

}

int main(){

menu();

system("pause");

return 0;

}

以上就是operatereg.exe【C++】的全部内容了,快快收藏非凡软件站下载更多软件和游戏吧!

软件截图

查看安装过程

键盘修改器

键盘修改器 键盘修改器能将键盘上的按键互相交换,可以模拟普通PC键盘,用于游戏改键、日常工作改键,旨在帮助各位网民更加方便的修改键盘按键。小凡为您提供多款键盘修改器相关的软件供您选择哦!快来选择下载吧!

软件资讯

更多>
  • 爱奇艺如何去除水印

    爱奇艺如何去除水印

    在观看爱奇艺视频时,水印有时会影响我们的观影视觉体验,那么爱奇艺怎么消除水印呢?今天就来为大家分享一些相关方法。首先,需要明确的是,未经授权私自去除爱奇艺水印属于侵权行为。但如果是在合理合法的范围内,比如用于个人学习、研究等非商业用途的剪辑等,有一些小技巧可以

  • Discuz如何设置帖附附件下载扣积分

    Discuz如何设置帖附附件下载扣积分

    在discuz论坛系统中,管理员可以通过设置帖附附件的下载规则来控制用户下载附件时是否需要消耗积分。这一功能可以帮助论坛管理员更好地管理资源的共享与流通,同时也能激励用户通过参与论坛活动获取更多积分。本文将详细介绍如何在discuz中设置帖附附件下载扣积分的功

  • 河南掌上工商登记怎么更改手机号

    河南掌上工商登记怎么更改手机号

    在使用河南掌上工商登记时,有时我们需要更改绑定的手机号。那么具体该如何操作呢?下面就为大家详细介绍更改手机号的方法。一、准备工作首先,确保你已经下载并安装了最新版本的河南掌上工商登记app。并且你需要拥有该账号的登录密码或通过已绑定的其他验证方式能够正常登录账

  • 全能扫描王如何替换一页

    全能扫描王如何替换一页

    在使用全能扫描王进行文档处理时,有时我们需要对扫描的某一页进行替换操作。下面就为大家详细介绍其替换一页的操作方法。首先,打开全能扫描王应用程序,并找到你需要操作的文档。进入文档页面后,你会看到已扫描的各页内容。若要替换其中一页,通常有以下两种常见途径。其一,通

  • 微信能否远程控制电脑

    微信能否远程控制电脑

    在如今数字化办公与生活场景下,远程控制电脑变得越来越重要。借助微信,你也能轻松实现远程控制电脑,下面就为大家详细介绍。准备工作首先,确保你的电脑和手机都安装了最新版本的微信。在电脑上,打开微信并登录账号。在手机微信中,点击界面右下角的“我”-“设置”-“通用”

  • qooapp如何加速

    qooapp如何加速

    在使用qooapp时,很多用户都希望能够获得更流畅的体验,加速操作就显得尤为重要。下面就为大家详细介绍qooapp的加速操作方法。清理缓存首先,定期清理qooapp的缓存是加速的关键一步。随着使用时间的增加,应用会积累大量缓存文件,占用手机存储空间并影响运行速

最新更新

更多>

注意事项

本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。
如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系版权说明注意事项)。若有关在线投稿、无法下载等问题,请与本站客服人员联系
用户可自行按线路选择相应的下载点,可以直接点击下载/另存为,若直接点击下载速度太慢,请尝试使用高速下载器。为确保下载的文件能正常使用,请使用WinRAR最新版本解压本站软件。
建议大家谨慎对待所下载的文件,大家在安装的时候务必留意每一步!关于360安全卫士QQ电脑管家的有关提示,请自行注意选择操作。