【C++】c++修改IE浏览器的Internet选项
windows开发经常会使用IE浏览器,例如Http编程。很多时候我们需要修改Internet选项中的cookies,高级设置,tls1.0 tls1.2之类的子项,这时可以使用修改注册表方法达到目的,微软内置软件多以注册表形式作为参数。问题又来了,注册表的选项纷繁复杂,里面的值代表什么意思?
下面教大家一个小技巧,在不知道修改项位置和数值含义的情况下,轻松找出目标并正确修改。
关于Internet选项注册表路径
Win+R呼出【运行】,输入 regedit 打开注册表工具,Internet选项在下面路径:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
举一个栗子:
修改Internet选项 - 高级,启用tls1.0 & tls1.1 & tls1.2。
首先,我也不知道启用1.0,1.1,1.2需要怎么设置,原本是只开启1.0 1.1的,禁止了1.2。
第一步
在默认值的情况下,打开上文路径Internet Settings注册表,右击选择导出,命名为reg01。
第二步
打开IE浏览器 - Internet选项 - 高级,手动把TLS1.2勾上,保存并关闭。再次导出Internet Settings注册表,命名为reg02。
第三步
打开文本对比工具,此处推荐一个在线对比网站 http://www.newjson.com/Static/Tools/Diff.html
导入reg01,reg02对比,发现 SecureProtocols数值改变了,由0x0280变成了0x0a80,其余数值没有变。便可以断定0x0a80就代表同时勾选TLS1.0 1.1 1.2。
注册表中对应的内容如下
C++修改对应位置的注册表数值。
知道了修改项位置和数值内容,就可以coding了。c++代码如下
#include <windows.h>
#include <iostream>
using namespace std;HKEY OpenKey(HKEY hRootKey, wchar_t* strKey)
{HKEY hKey;LONG nError = RegOpenKeyEx(hRootKey, strKey, NULL, KEY_ALL_ACCESS, &hKey);if (nError==ERROR_FILE_NOT_FOUND){cout << "Creating registry key: " << strKey << endl;nError = RegCreateKeyEx(hRootKey, strKey, NULL, NULL, REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL, &hKey, NULL);}if (nError)cout << "Error: " << nError << " Could not find or create " << strKey << endl;return hKey;
}void SetVal(HKEY hKey, LPCTSTR lpValue, DWORD data)
{LONG nError = RegSetValueEx(hKey, lpValue, NULL, REG_DWORD, (LPBYTE)&data, sizeof(DWORD));if (nError)cout << "Error: " << nError << " Could not set registry value: " << (char*)lpValue << endl;
}DWORD GetVal(HKEY hKey, LPCTSTR lpValue)
{DWORD data; DWORD size = sizeof(data); DWORD type = REG_DWORD;LONG nError = RegQueryValueEx(hKey, lpValue, NULL, &type, (LPBYTE)&data, &size);if (nError==ERROR_FILE_NOT_FOUND)data = 0; // The value will be created and set to data next time SetVal() is called.else if (nError)cout << "Error: " << nError << " Could not get registry value " << (char*)lpValue << endl;return data;
}int main()
{// 打开Internet选项位置HKEY hKey = OpenKey(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings");DWORD vv = GetVal(hKey, L"SecureProtocols"); //0x0280vv = 2688; //0x0a80// 修改十进制数值SetVal(hKey, L"SecureProtocols", vv);RegCloseKey(hKey);return 0;
}
关于注册表编程,可以参考 https://www.cnblogs.com/john-h/p/5886870.html
举一反三
回看前面说的,如果想修改Internet选项的其他内容,只需要对比修改前后的regedit文本,找出对应项和对应数值。
这样,在不知道数值含义和参数位置情况下,也能轻松达到目的。
【C++】c++修改IE浏览器的Internet选项相关推荐
- ie浏览器调用本地文件无反应_IE浏览器工具--internet选项--设置--查看文件为什么打不开没反应...
展开全部 这种情况,最快捷的方式是使用电脑62616964757a686964616fe78988e69d8331333332633536管家的电脑诊所功能修复一下,一键就可以完成,避免复杂的手动修复 ...
- IE8浏览器为什么没有工具-internet选项
IE8浏览器为什么没有工具-internet选项 在命令栏的空白处右击--命令栏C...
- ie浏览器服务器ini文件在哪,具体方法如下: 1、打开Internet 选项(打开IE浏览器Internet选项窗口的方法)...
最近,有Win8.1系统的用户在局域网上打开IE浏览器,浏览器网页的时候,总是要等待很久才会显示网页,这样很是浪费时间啊!遇到这样的问题,我们应该如何处理呢?今天,小编就和大家说一下Win8.1局域网 ...
- xp计算机被限制,xp系统打开浏览器internet选项提示“由于计算机受到限制,本次操作已被取消”的还原办法...
今天和大家分享一下xp系统打开浏览器internet选项提示"由于计算机受到限制,本次操作已被取消"问题的解决方法,在使用xp系统的过程中经常不知道如何去解决xp系统打开浏览器in ...
- 项目中js文件修改后浏览器不能及时更新的解决办法
2019独角兽企业重金招聘Python工程师标准>>> 现在就分别把IE,firefox,chrome中解决办法贴出来供大家参考: 1.firefox(火狐浏览器)解决问题 第一步, ...
- WIN10-IE首页劫持后通过Internet选项更改首页无效问题
今天倒霉得很--达尔优官网没有一代牧马人驱动,搞得我上网下驱动被首页劫持了IE和Edge.Edge倒是智能得很,重置了之后像没事儿浏览器一般:倒是IE很麻烦,怎么重置设置也没用(想来也是,Edge或许 ...
- html注册表,通过注册表修改IE浏览器
通过注册表修改IE浏览器 给IE5添加多个HTML编辑器 HKEY_CURRENT_USER\ Software\Microsoft\Internet Explorer\Default HTML Ed ...
- win7 html做背景,Win7系统修改IE浏览器页面背景颜色的技巧
Win7系统打开IE浏览器网页的背景颜色都是默认的,长时间预览网页后,会觉得眼睛干涩,非常不舒服.出现这样情况很有可能是网页背景颜色不适应导致的,只要更换舒适缓和的背景颜色就可以解决问题了,如何设置修 ...
- 浏览器怎样更新java,Eclipse中js文件修改后浏览器不能及时更新的解决办法
现在就分别把IE,firefox,chrome中解决办法贴出来供大家参考: 1.firefox(火狐浏览器)解决问题 第一步,在浏览器中敲入:about:config ,然后回车 第二步,在显示出的内 ...
- 修改360浏览器 标题栏 显示的文字
作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313134555 @qq.com 修改360浏览器 标题栏 显示的文字 === ...
最新文章
- Android TextView 数字后面追加2个0 或者保留小数点后面2位
- 使用Gensim来实现Word2Vec和FastText
- 分苹果问题的C++和Python实现
- uniGUI试用笔记(二)
- mysql create table 语法详解
- 排球比赛计分规则功能说明书
- 专访阿里巴巴量子实验室:最强量子电路模拟器“太章”到底强在哪?
- python正则匹配ip地址_python 正则表达式匹配IP地址
- 安卓传感器全解:注册、注销传感器、监听传感器,距离传感器、方向传感器、陀螺仪、加速计、磁场、气压传感器
- 第二十三期 基于hg255d的OpenWrt固件编译《路由器就是开发板》
- JavaScript基础大总结
- mac book usb 故障修复
- 作为应聘者 面试结束时应该问面试官一些什么问题呢
- 非形式逻辑(01)概念及其种类
- matlab中用simulink仿真六足机器人
- 【文末有福利! 】刷脸开锁:背后的技术绝招
- suricata中的单模匹配和多模匹配
- android 股票曲线 动态,各种曲线图表。矩形 圆形,股票
- MATLAB 在线帮助文档
- 200 PORT command successful. Consider using PASV / Linux 部署vsftp不能正常访问
热门文章
- org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates
- Kafka系列9:面试题是否有必要深入了解其背后的原理?我觉得应该刨根究底(上)
- 李航《统计学习方法》第一章复习与习题参考解答
- 神经网络,英文字母识别
- 蓝叠手机模拟器使用技巧
- 工业级4g无线路由器_工业级4g无线路由器厂家品牌
- KETTLE使用通配符匹配多个文件输入到一张表中
- Scratch 游戏项目学习法 —— 接苹果(六)让苹果掉到下面
- CSS中如何撑起内容为空的div
- python 嵌入式webserver 服务器 状态监控