Это код, который я использую для включения прокси. Он работал нормально на всех версиях Windows вплоть до Server 2008 R2 (Windows 7 Kernal). Теперь это работает только в первый раз. Я запускаю свое приложение и включаю прокси, и это работает нормально. Затем я пытаюсь отключить его, используя код, похожий на код ниже. Это никогда не отключается. Если я вручную отключу его, зайдя в настройки Интернета, а затем попробую включить его снова через свое приложение, оно не будет включено.
Насколько я могу судить, первая команда InternetSetOption в моем коде отменяет изменения, которые я делаю с помощью функции regKey.SetValue (). По крайней мере, это то, что происходит, когда я прохожу через это. Кто-нибудь видел эту проблему раньше, или знает, как ее исправить. Я пытался найти работу некоторое время, и ничего не получилось. Любой вклад будет оценен.
regKey.SetValue("ProxyServer", "localhost:" + Settings.Default.Port, RegistryValueKind.String);
regKey.SetValue("ProxyEnable", 1, RegistryValueKind.DWord);
regKey.Flush();
InternetSetOption(IntPtr.Zero, 39, IntPtr.Zero, 0); //INTERNET_OPTION_SETTINGS_CHANGED
InternetSetOption(IntPtr.Zero, 37, IntPtr.Zero, 0); //INTERNET_OPTION_REFRESH