Hallo miteinander !
Hätte eine kleine Frage ?
Und zwar möchte ich meine Proxy Einstellung per Code setzen.
Was ist dafür besser?:
(( InternetSetOption Lib "wininet.dll" ))
oder:
(( Registry umschreiben ))
Option Strict On
Imports Microsoft.Win32
Public Class Form1
Dim Offset As Integer = 16
Dim ProxyEnable As Boolean
Dim ProxyServer As String
Dim DefaultConnectionSettings As New List(Of Byte)
Dim SavedLegacySettings As New List(Of Byte)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'xxx
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button1.Click, Button2.Click
DefaultConnectionSettings.Clear() : SavedLegacySettings.Clear() 'List(
' Of Byte) immer zuerst löschen
If sender Is Button1 Then 'Button 1 Proxy an
ProxyEnable = True 'Proxy Enable auf 1 setzen
ProxyServer = New_IP_Box.Text ' IP in ProxyServer eintragen
'Windows7 Proxy Grundeinstellung - an - in List(Of Byte) übergeben
DefaultConnectionSettings.AddRange(New Byte() {70, 0, 0, 0})'usw
SavedLegacySettings.AddRange(New Byte() {70, 0, 0, 0})'usw
'IP Textbox mit Schleife und Substring durchlaufen
For i = 0 To New_IP_Box.TextLength - 1
Dim c As Char = CType(New_IP_Box.Text.Substring(i, 1), Char)
Dim Convertierte_IP As Byte = CByte(Asc(c).ToString) 'IP
' convertieren
DefaultConnectionSettings.Insert(Offset + i, Convertierte_IP) _
'IP convertierte IP mit Insert in List(Of Byte) einfügen
SavedLegacySettings.Insert(Offset + i, Convertierte_IP) 'IP
' convertierte IP mit Insert in List(Of Byte) einfügen
Next
ElseIf sender Is Button2 Then 'Button 2 Proxy aus
ProxyEnable = False 'Proxy Enable auf 0 setzen
ProxyServer = "" ' IP in ProxyServer löschen
'Windows7 Proxy Grundeinstellung - aus - in List(Of Byte) übergeben
DefaultConnectionSettings.AddRange(New Byte() {70, 0, 0, 0})'usw
SavedLegacySettings.AddRange(New Byte() {70, 0, 0, 0})'usw
End If
'Die Übergabe von Button 1 oder Button 2 in die Registry schreiben
Dim regKey1, regKey2 As RegistryKey
regKey1 = Registry.CurrentUser.CreateSubKey( _
"Software\Microsoft\Windows\CurrentVersion\Internet Settings", _
RegistryKeyPermissionCheck.Default)
regKey1.SetValue("ProxyServer", ProxyServer, RegistryValueKind.String)
regKey1.SetValue("ProxyEnable", ProxyEnable, RegistryValueKind.DWord)
regKey1.Close()
regKey2 = Registry.CurrentUser.CreateSubKey( _
"Software\Microsoft\Windows\CurrentVersion\Internet" & _
"Settings\Connections",RegistryKeyPermissionCheck.Default)
regKey2.SetValue("DefaultConnectionSettings", _
DefaultConnectionSettings.ToArray, RegistryValueKind.Binary)
regKey2.SetValue("SavedLegacySettings", SavedLegacySettings.ToArray, _
RegistryValueKind.Binary)
regKey2.Close()
End Sub
End Class Oder mal Ansatz mit Hex:
Dim Original_HexString As String = "46-00-00-00-BB-B6-"
Dim New_IP_HexString As String = ""
For i = 1 To New_IP_Box.TextLength
New_IP_HexString &= Hex(Asc(Mid(New_IP_Box.Text, i, 1))) & "-"
Next i
Dim Fertigen_HexString As String = Mid(Original_HexString, 1, 48) & _
New_IP_HexString & Mid(Original_HexString, 49, Original_HexString.Length)
Dim NewBytes() As Byte = (From var In Fertigen_HexString.Split("-") Select _
Convert.ToByte(var, 16)).ToArray() Und zu (( wininet.dll )) hab ich noch was großes gefunden ,
geht auch aber ich find nicht genug darüber um aus den Parametern schlau zu werden ???
LG Loki
Wer Ordnung hält, ist nur zu faul zum Suchen. |