C 启用绕过代理服务器并通知IE更改
我正在尝试使用Internet Explorer Options API根据此设置局域网设置 我可以设置代理地址和异常,但我想启用C 启用绕过代理服务器并通知IE更改,c,internet-explorer,winapi,C,Internet Explorer,Winapi,我正在尝试使用Internet Explorer Options API根据此设置局域网设置 我可以设置代理地址和异常,但我想启用绕过本地地址的代理服务器复选框,并通知Internet Explorer进行更改,这样我就不必关闭并再次打开它 我想我需要使用internetperconn\u option结构中的另一个选项,但不知道应该使用什么 这是我的代码: #include <Windows.h> #include <wininet.h> #include <w
绕过本地地址的代理服务器
复选框,并通知Internet Explorer进行更改,这样我就不必关闭并再次打开它
我想我需要使用internetperconn\u option
结构中的另一个选项,但不知道应该使用什么
这是我的代码:
#include <Windows.h>
#include <wininet.h>
#include <wchar.h>
#pragma comment(lib, "Wininet.lib")
int wmain(int argc, wchar_t * argv[])
{
INTERNET_PER_CONN_OPTION_LIST connList;
DWORD bufSize = sizeof(connList);
connList.dwSize = sizeof(connList);
connList.pszConnection = NULL;
connList.dwOptionCount = 3;
connList.pOptions = (INTERNET_PER_CONN_OPTION*)malloc(sizeof(INTERNET_PER_CONN_OPTION) * 3);
if (connList.pOptions == NULL)
{
fwprintf(stderr, L"Memory allocation failed.\n");
return 1;
}
connList.pOptions[0].dwOption = INTERNET_PER_CONN_FLAGS;
connList.pOptions[0].Value.dwValue = PROXY_TYPE_DIRECT |
PROXY_TYPE_PROXY;
connList.pOptions[1].dwOption = INTERNET_PER_CONN_PROXY_SERVER;
connList.pOptions[1].Value.pszValue = L"https://internal.com.co:80";
connList.pOptions[2].dwOption = INTERNET_PER_CONN_PROXY_BYPASS;
connList.pOptions[2].Value.pszValue = L"local";
BOOL internetOption;
internetOption = InternetSetOptionW(NULL,
INTERNET_OPTION_PER_CONNECTION_OPTION,
&connList,
bufSize);
if (internetOption != TRUE)
{
fwprintf(stderr, L"Faile to set the option with code: %u\n", GetLastError());
return 1;
}
free(connList.pOptions);
wprintf(L"Done!\n");
return 0;
}
#包括
#包括
#包括
#pragma注释(lib,“Wininet.lib”)
int wmain(int argc,wchar_t*argv[])
{
互联网连接选项列表连接列表;
DWORD bufSize=sizeof(连接列表);
connList.dwSize=sizeof(connList);
connList.pszConnection=NULL;
connList.dwOptionCount=3;
connList.pOptions=(互联网连接选项*)malloc(互联网连接选项)*3);
if(connList.pOptions==NULL)
{
fwprintf(标准,L“内存分配失败。\n”);
返回1;
}
connList.pOptions[0].dwOption=internetperconn\u标志;
connList.pOptions[0].Value.dwValue=PROXY\u TYPE\u DIRECT|
代理类型代理;
connList.pOptions[1].dwOption=每个连接代理服务器的INTERNET\u;
connList.pOptions[1].Value.pszValue=L“https://internal.com.co:80";
connList.pOptions[2].dwOption=INTERNET\u PER\u CONN\u PROXY\u旁路;
connList.pOptions[2].Value.pszValue=L“本地”;
布尔互联网;
internetOption=InternetSetOptionW(空,
互联网选项每个连接选项,
&康纳斯,
bufSize);
如果(internetOption!=真)
{
fwprintf(stderr,L“无法设置选项,代码:%u\n”,GetLastError());
返回1;
}
免费(connList.pOptions);
wprintf(L“完成!\n”);
返回0;
}
你能帮我吗?将字符串
包括
符号添加到例外列表中,例如;*。microsoft.com
太棒了!您是否知道通知IE进行更改而不重新打开它?我认为您应该在设置新值之前先重置代理设置(“proxy\u TYPE\u DIRECT”)。