Ermitteln des Verbindungszustands Ihres lokalen Systems und des Initiierens oder Beendens einer Internetverbindung mithilfe von Visual Basic .NET oder Visual Basic 2005
In diesem Artikel erfahren Sie, wie Sie den Verbindungsstatus Ihres lokalen Systems ermitteln und eine Internetverbindung mithilfe von Visual Basic .NET oder Visual Basic 2005 initiieren oder beenden.
Ursprüngliche Produktversion: Visual Studio
Ursprüngliche KB-Nummer: 821770
Zusammenfassung
In diesem Schritt-für-Schritt-Artikel wird beschrieben, wie Sie den Verbindungsstatus Ihres lokalen Systems mithilfe der InternetGetConnectedState
Funktion ermitteln, die die Microsoft Windows Internet (WinINet)-API bereitstellt. In diesem Artikel wird auch beschrieben, wie Sie eine Internetverbindung initiieren und eine Internetverbindung beenden, indem Sie die InternetDial
WinINet
API-Funktion und die InternetHangUp
WinINet
API-Funktion verwenden.
Bei WinINet
der API handelt es sich um eine Reihe von Funktionen, mit denen Anwendungen mit Gopher, mit FTP (File Transfer Protocol) und mit dem Hypertext Transfer Protocol (HTTP) interagieren können, um auf viele Ressourcen im Internet zuzugreifen. Die InternetGetConnectedState
Funktion gibt True oder False zurück, je nachdem, ob eine Verbindung vorhanden ist. Nach einem Aufruf der InternetGetConnectedState
Funktion enthält der lpdwFlags-Parameter einen vordefinierten Wert, der weitere Informationen zur Verbindung bereitstellt. Beispielsweise kann der Wert, den IpdwFlags enthält, darauf hinweisen, dass es sich bei der Verbindung um eine LAN-Verbindung (Local Area Network), eine Modemverbindung oder einen anderen Verbindungstyp handelt. Sie können aus dem Rückgabewert der InternetGetConnectedState
Funktion ableiten, ob eine Verbindung vorhanden ist.
Wenn der InternetGetconnectionState
Funktionsaufruf True zurückgibt, besteht eine Netzwerkverbindung. Dies garantiert jedoch nicht, dass Sie Zugriff auf Daten haben oder dass Sie Zugriff auf Websites im Netzwerk haben.
Die InternetDial
Funktion initiiert eine Verbindung mit dem Internet mithilfe eines Modems. Der lpszConnectoid-Parameter gibt den Namen der DFÜ-Verbindung an, die von der InternetDial
Funktion verwendet wird. Sie können die InternetHangUp
WinINet
API-Funktion verwenden, um das Modem anzuweisen, die Verbindung zu beenden, die der dwConnection-Parameter angibt.
Schritt-für-Schritt-Beispiel
Starten Sie Microsoft Visual Studio .NET oder Microsoft Visual Studio 2005.
Zeigen Sie im Menü Datei auf Neu, und klicken Sie dann auf Projekt.
Klicken Sie unter Projekttypen auf Visual Basic-Projekte.
Hinweis
Klicken Sie in Visual Studio 2005 unter Projekttypen auf Visual Basic.
Klicken Sie unter Vorlagen auf Windows-Anwendung.
Standardmäßig wird Form1 erstellt.
Klicken Sie mit der rechten Maustaste auf Form1, und klicken Sie dann auf Code anzeigen.
Fügen Sie der Form1-Klasse die folgenden Deklarationsanweisungen hinzu:
Private Declare Function InternetGetConnectedState Lib "wininet.dll" (ByRef lpdwFlags As Int32, _ ByVal dwReserved As Int32) As Boolean Private Declare Function InternetDial Lib "Wininet.dll" (ByVal hwndParent As IntPtr, _ ByVal lpszConnectoid As String, ByVal dwFlags As Int32, ByRef lpdwConnection As Int32, _ ByVal dwReserved As Int32) As Int32 Private Declare Function InternetHangUp Lib "Wininet.dll" _ (ByVal lpdwConnection As Int32, ByVal dwReserved As Int32) As Int32 Private Enum Flags As Integer 'Local system uses a LAN to connect to the Internet. INTERNET_CONNECTION_LAN = &H2 'Local system uses a modem to connect to the Internet. INTERNET_CONNECTION_MODEM = &H1 'Local system uses a proxy server to connect to the Internet. INTERNET_CONNECTION_PROXY = &H4 'Local system has RAS installed. INTERNET_RAS_INSTALLED = &H10 End Enum 'Declaration Used For InternetDialUp. Private Enum DialUpOptions As Integer INTERNET_DIAL_UNATTENDED = &H8000 INTERNET_DIAL_SHOW_OFFLINE = &H4000 INTERNET_DIAL_FORCE_PROMPT = &H2000 End Enum Private Const ERROR_SUCCESS = &H0 Private Const ERROR_INVALID_PARAMETER = &H87 Private mlConnection As Int32
Klicken Sie im Menü Ansicht auf Designer.
Hinzufügen eines Schaltflächen-Steuerelements zu Form1.
Klicken Sie mit der rechten Maustaste auf Button1, und klicken Sie dann auf Eigenschaften.
Ändern Sie im Eigenschaftenfenster die Text-Eigenschaft des Button1-Steuerelements in Verbindung erkennen.
Doppelklicken Sie auf Verbindung erkennen, und fügen Sie dann den folgenden Code in den Button1_Click-Ereignishandler ein:
Dim lngFlags As Long If InternetGetConnectedState(lngFlags, 0) Then 'connected. If lngFlags And Flags.INTERNET_CONNECTION_LAN Then 'LAN connection. MsgBox("LAN connection.") ElseIf lngFlags And Flags.INTERNET_CONNECTION_MODEM Then 'Modem connection. MsgBox("Modem connection.") ElseIf lngFlags And Flags.INTERNET_CONNECTION_PROXY Then 'Proxy connection. MsgBox("Proxy connection.") End If Else 'not connected. MsgBox("Not connected.") End If
Fügen Sie form1 ein weiteres Button-Steuerelement hinzu.
Klicken Sie mit der rechten Maustaste auf Button2, und klicken Sie dann auf Eigenschaften.
Ändern Sie im Eigenschaftenfenster die Text-Eigenschaft des Button2-Steuerelements in Einwählen.
Doppelklicken Sie auf DFÜ, und fügen Sie dann den folgenden Code im Button2_Click-Ereignishandler hinzu:
Dim DResult As Int32 DResult = InternetDial(Me.Handle, "My Connection", DialUpOptions.INTERNET_DIAL_FORCE_PROMPT, mlConnection, 0) If (DResult = ERROR_SUCCESS) Then MessageBox.Show("Dial Up Successful", "Dial-Up Connection") Else MessageBox.Show("UnSuccessFull Error Code" & DResult, "Dial-Up Connection") End If
Hinweis
Ersetzen Sie My Connection durch den Namen der DFÜ-Verbindung auf Ihrem Computer.
Fügen Sie form1 ein weiteres Button-Steuerelement hinzu.
Klicken Sie mit der rechten Maustaste auf Button3, und klicken Sie dann auf Eigenschaften.
Ändern Sie im Eigenschaftenfenster die Text-Eigenschaft des Button3-Steuerelements in Auflegen.
Doppelklicken Sie auf Auflegen, und fügen Sie dann den folgenden Code in den Button3_Click-Ereignishandler ein:
Dim Result As Int32 If Not (mlConnection = 0) Then Result = InternetHangUp(mlConnection, 0&) If Result = 0 Then MessageBox.Show("Hang up successful", "Hang Up Connection") Else MessageBox.Show("Hang up NOT successful", "Hang Up Connection") End If Else MessageBox.Show("You must dial a connection first!", "Hang Up Connection") End If
Klicken Sie im Menü Datei auf Alle speichern , um das Projekt zu speichern.
Klicken Sie im Menü Debuggen auf Start , um die Anwendung auszuführen.
Überprüfen, ob tt funktioniert
Führen Sie die Anwendung aus, die Sie im Abschnitt Schritt-für-Schritt-Beispiel dieses Artikels erstellt haben.
Form1 wird angezeigt.
Klicken Sie auf Verbindung erkennen, und beachten Sie dann den aktuellen Verbindungsstatus Ihres lokalen Computers.
Klicken Sie auf Einwählen.
Das Dialogfeld DFÜ-Verbindung wird angezeigt.
Klicken Sie auf Auflegen.
Die Internetverbindung, die Sie in Schritt 3 hergestellt haben, wird beendet.
References
Weitere Informationen finden Sie auf den folgenden Websites:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für