Как включить прокси для конкретного приложения или изменить глобальный прокси сервер Windows на C#?
Как подключить прокси в Windows на C# с использованием логина и пароля? Мне нужно включить прокси для конкретного приложения или глобально в Windows. У меня есть следующий код на C# и он работает:
[DllImport("wininet.dll")]
public static extern bool InternetSetOption(IntPtr hInternet, int dwOption, IntPtr lpBuffer, int dwBufferLength);
public const int INTERNET_OPTION_SETTINGS_CHANGED = 39;
public const int INTERNET_OPTION_REFRESH = 37;
static void Main(string[] args)
{
RegistryKey regKey = Registry.CurrentUser;
regKey = regKey.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings");
regKey.SetValue("ProxyEnable", 1);
regKey.SetValue("ProxyServer", "172.16.16.30:3128");
regKey.Close();
InternetSetOption(IntPtr.Zero, INTERNET_OPTION_SETTINGS_CHANGED, IntPtr.Zero, 0);
InternetSetOption(IntPtr.Zero, INTERNET_OPTION_REFRESH, IntPtr.Zero, 0);
ProcessStartInfo psi = new ProcessStartInfo(Environment.SystemDirectory + @"\netsh.exe", "winhttp import proxy source=ie");
Process.Start(psi);
Console.ReadKey();
}
Но проблема в том, что таким методом можно подключить прокси только без логина и пароля. В сети я нашла только информацию по подключению только с ID и PORT, читала данные материалы: 1, 2, 3, 4.