Я пытаюсь использовать API параметров Internet Explorer для установки Настройки локальной сети на основе этого примера от Microsoft .
Мне удалось установить проксиадрес и исключение, но я хочу включить флажок Bypass proxy server for local addresses
, а также уведомить Internet Explorer об изменении, чтобы мне не приходилось закрывать его и открывать снова.
Полагаю, мне нужно использовать другую опцию из структуры INTERNET_PER_CONN_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;
}
Можете ли вы помочь мне?