获取IE默认代理配置
2013-07-04 09:50
323 查看
BOOL GetWinetProxy(LPSTR lpszProxy, UINT nProxyLen)
{
unsigned long nSize = 4096;
char szBuf[4096] = { 0 };
INTERNET_PROXY_INFO* pProxyInfo = (INTERNET_PROXY_INFO*)szBuf;
if(!InternetQueryOption(NULL, INTERNET_OPTION_PROXY, pProxyInfo, &nSize))
{
return FALSE;
}
if (pProxyInfo->dwAccessType == INTERNET_OPEN_TYPE_DIRECT)
{
return FALSE;
}
//这里是代理列表,以\0分隔,结束处两个\0\0,一般我们取第一条代理就够了
LPCSTR lpszProxyList = (LPCSTR)(pProxyInfo + 1);
int nLen = strlen(lpszProxyList);
if (lpszProxy)
{
nProxyLen = min(nLen, nProxyLen-1);
strncpy(lpszProxy, lpszProxyList, nProxyLen);
lpszProxy[nProxyLen] = 0;
}
return nLen;
/*INTERNET_PER_CONN_OPTION_LISTA List;
INTERNET_PER_CONN_OPTIONA Option[1];
unsigned long nSize = sizeof(INTERNET_PER_CONN_OPTION_LISTA);
Option[0].dwOption = INTERNET_PER_CONN_PROXY_SERVER;
List.dwSize = sizeof(INTERNET_PER_CONN_OPTION_LIST);
List.pszConnection = NULL;
List.dwOptionCount = 1;
List.dwOptionError = 0;
List.pOptions = Option;
if(!InternetQueryOptionA(NULL, INTERNET_OPTION_PER_CONNECTION_OPTION, &List, &nSize))
{
return FALSE;
}
if(Option[0].Value.pszValue != NULL)
{
int nLen = strlen(Option[0].Value.pszValue);
if (lpszProxy)
{
nProxyLen = min(nLen, nProxyLen-1);
strncpy(lpszProxy, Option[0].Value.pszValue, nProxyLen);
lpszProxy[nProxyLen] = 0;
}
GlobalFree(Option[0].Value.pszValue);
return nLen;
}*/
return FALSE;
}
{
unsigned long nSize = 4096;
char szBuf[4096] = { 0 };
INTERNET_PROXY_INFO* pProxyInfo = (INTERNET_PROXY_INFO*)szBuf;
if(!InternetQueryOption(NULL, INTERNET_OPTION_PROXY, pProxyInfo, &nSize))
{
return FALSE;
}
if (pProxyInfo->dwAccessType == INTERNET_OPEN_TYPE_DIRECT)
{
return FALSE;
}
//这里是代理列表,以\0分隔,结束处两个\0\0,一般我们取第一条代理就够了
LPCSTR lpszProxyList = (LPCSTR)(pProxyInfo + 1);
int nLen = strlen(lpszProxyList);
if (lpszProxy)
{
nProxyLen = min(nLen, nProxyLen-1);
strncpy(lpszProxy, lpszProxyList, nProxyLen);
lpszProxy[nProxyLen] = 0;
}
return nLen;
/*INTERNET_PER_CONN_OPTION_LISTA List;
INTERNET_PER_CONN_OPTIONA Option[1];
unsigned long nSize = sizeof(INTERNET_PER_CONN_OPTION_LISTA);
Option[0].dwOption = INTERNET_PER_CONN_PROXY_SERVER;
List.dwSize = sizeof(INTERNET_PER_CONN_OPTION_LIST);
List.pszConnection = NULL;
List.dwOptionCount = 1;
List.dwOptionError = 0;
List.pOptions = Option;
if(!InternetQueryOptionA(NULL, INTERNET_OPTION_PER_CONNECTION_OPTION, &List, &nSize))
{
return FALSE;
}
if(Option[0].Value.pszValue != NULL)
{
int nLen = strlen(Option[0].Value.pszValue);
if (lpszProxy)
{
nProxyLen = min(nLen, nProxyLen-1);
strncpy(lpszProxy, Option[0].Value.pszValue, nProxyLen);
lpszProxy[nProxyLen] = 0;
}
GlobalFree(Option[0].Value.pszValue);
return nLen;
}*/
return FALSE;
}
相关文章推荐
- apache 配置动静分离,允许跨域, 并在反向代理的情况下维持默认主页
- 获取IE代理地址
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!
- Window client application 使用IE的http代理配置访问外网
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理(全)
- 通过ISA 2006 配置 IE代理的例外
- 自动配置IE代理脚本
- IE代理 自动配置
- Forefront TMG 2010 篇(六)--域用户上网(域脚本配置IE代理、创建域允许用户组)
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!(一)
- 自动配置IE代理脚本
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!(二)
- Windows Server 2008 配置IE使用代理
- 自动配置IE代理脚本
- IE代理自动配置
- $this->Config 获取默认配置
- Delphi 获取浏览器路径 注册表获取默认浏览器、注册表读取IE路径 拼接IE路径
- 自动切换IE代理设置: 简单使用IE自动配置脚本
- 自动配置IE代理脚本