写C++程序绕过IE的限制:“某些设置由系统管理员进行管理”

在公司环境中,IE浏览器的代理设置通常由系统管理员管理,不允许用户自行更改。本文介绍了如何通过C++编程的方式,绕过这种限制,成功修改系统代理设置,以使特定软件如iTunes能够正常使用。代码实现这一功能,使得在受限制的网络环境下也能访问特定资源。
摘要由CSDN通过智能技术生成

公司的电脑,其IE代理都是由“系统管理员”进行统一设置的:Auto Config URL。

打开我的IE10的设置,可以看到如下图样:


我修改了注册表,却发现其实它并未真正生效。

我平时应用的很多软件,因为自带设置代理的功能,所以使用并未受影响,通过用cntlm代理,能干很多事情。但是,iTunes这个软件不一样。它只能使用系统设置的代理。我为了能使用iTunes听那些高质量的Podcast节目,今天在网上找了一些代码,终于成功修改了系统代理,绕过了公司的限制。下面是代码的内容:

// ProxyConnect.cpp : Change system proxy settings programmatically.

#include "stdafx.h"
#include <Windows.h>
#include <WinInet.h>

BOOL QueryConnectionOptions(LPTSTR conn_name)
{
	INTERNET_VERSION_INFO Version;
	DWORD nSize = sizeof(INTERNET_VERSION_INFO);
	InternetQueryOption(NULL, INTERNET_OPTION_VERSION, &Version, &nSize);
	printf("[Wininet.dll Version] %d.%d\n", Version.dwMajorVersion, Version.dwMinorVersion);	

	INTERNET_PER_CONN_OPTION Option[5];							// === The most common useful settings ===
	Option[0].dwOption = INTERNET_PER_CONN_AUTOCONFIG_URL;		//1. URL to the automatic configuration script
	Option[1].dwOption = INTERNET_PER_CONN_AUTODISCOVERY_FLAGS;	//2. automatic discovery settings (flags: always_detect | use_cached_one | no_cache ...)
	Option[2].dwOption = INTERNET_PER_CONN_FLAGS;				//3. connection type (flags: direct | proxy | auto_proxy_url | auto_detect)
	Option[3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值