#vb.net #internet-explorer #proxy
#vb.net #internet-explorer #прокси
Вопрос:
Возможно ли это вообще?
Я знаю, что способ сделать это — изменить реестр. Однако должен быть лучший способ.
Общий параметр EnableProxy1()
Dim regKey As Microsoft.Win32.RegistryKey
regKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SoftwareMicrosoftWindowsCurrentVersionInternet Settings", True)
regKey.SetValue("ProxyEnable", True, Microsoft.Win32.RegistryValueKind.DWord)
regKey.SetValue("ProxyServer", proxyhandler.proxyFedtoInternetExplorer, Microsoft.Win32.RegistryValueKind.String)
regKey.SetValue("ProxyOverride", "<local>", Microsoft.Win32.RegistryValueKind.String)
regKey.Close()
End Sub
Общий вспомогательный параметр DisableProxy() Отключает RegKey как Microsoft.Win32.RegistryKey
regKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SoftwareMicrosoftWindowsCurrentVersionInternet Settings", True)
regKey.SetValue("ProxyEnable", False, Microsoft.Win32.RegistryValueKind.DWord)
regKey.Close()
End Sub
У этого есть 2 слабых места
- Мне нужно перезапустить Internet Explorer
- Мне нужно изменить имя пользователя и пароль прокси-сервера, напрямую управляя Windows.
Я хочу метод, который лучше и прямой. Есть способы?
Комментарии:
1. Общесистемный прокси-сервер? почему в настоящее время делает vb.net требуется перезапуск?
2. Прокси-сервер ie. ie должен быть перезапущен.
3. Извините, заголовок должен был быть программным изменением прокси Internet Explorer, включая пароль, без перезапуска IE в vb.net
Ответ №1:
Imports Microsoft.Win32
Public Class ProxySetting
Public Function IsProxyEnabled() As Boolean
Try
Dim Regs As RegistryKey = Registry.CurrentUser.CreateSubKey("SoftwareMicrosoftWindowsCurrentVersionInternet Settings", RegistryKeyPermissionCheck.ReadWriteSubTree)
If Regs.GetValue("ProxyEnable") <> Nothing Then
If Regs.GetValue("ProxyEnable").ToString() = "0" Then
Return False
Else
Return True
End If
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
Public Function GetProxyServer() As String
Try
Dim Regs As RegistryKey = Registry.CurrentUser.CreateSubKey("SoftwareMicrosoftWindowsCurrentVersionInternet Settings", RegistryKeyPermissionCheck.ReadWriteSubTree)
If Regs.GetValue("ProxyServer") <> Nothing Then
Return Regs.GetValue("ProxyServer").ToString()
Else
Return ""
End If
Catch ex As Exception
Return ""
End Try
End Function
Public Sub DisableProxy()
Dim regKey As RegistryKey
Try
regKey = Registry.CurrentUser.CreateSubKey("SoftwareMicrosoftWindowsCurrentVersionInternet Settings", True)
regKey.SetValue("ProxyEnable", False, RegistryValueKind.DWord)
regKey.Close()
Catch ex As Exception
End Try
End Sub
Public Sub SetProxy(ByVal ServerName As String, ByVal port As Integer)
Try
Dim regkey1 As RegistryKey
regkey1 = Registry.CurrentUser.CreateSubKey("SoftwareMicrosoftWindowsCurrentVersionInternet Settings", True)
regkey1.SetValue("ProxyServer", ServerName ":" port.ToString(), RegistryValueKind.Unknown)
regkey1.SetValue("ProxyEnable", True, RegistryValueKind.DWord)
regkey1.Close()
Catch ex As Exception
End Try
End Sub
End Class
Комментарии:
1. Добавьте некоторое объяснение.