Dieser Tipp lehnt sich an den gleichnamigen Tipp an, der aber für VB5/6 ist: In VB.NET geht das ganze viel einfacher. Erstellen Sie ein neues Klassenmodul MapService mit folgendem Code: Public Class MapService ''' <summary> ''' Ermittelt über Google-Maps die KM-Entfernung zweier Orte ''' </summary> ''' <param name="source">Ausgangsort</param> ''' <param name="destination">Zielort</param> ''' <returns>KM-Entfernung</returns> Public Shared Function GetKMDistance(ByVal source As String, _ ByVal destination As String) As Integer Dim response As String = (New WebClient).DownloadString( _ String.Format("http://maps.google.de/maps?f=d&hl=de&saddr={0}&daddr={1}&output=html", _ source, destination)) ' innerhalb des Response-Wertes nach folgendem String suchen ' Fahrt:</td><td align="right" nowrap class="timedist ul"> ' <div class="noprint"><div>136 km Dim pattern As String = "Fahrt:\D+(\d+).+?km" Dim match = Regex.Match(response, pattern) If Not match.Success OrElse match.Groups.Count < 2 Then Throw New Exception("Anfrage bei GoogleMaps fehlgeschlagen!") Else Return Integer.Parse(match.Groups(1).Value) End If End Function End Class Beispiel für den Aufruf: Dim KM As Integer KM = MapService.GetKMDistance("86517", "Leipzig") MsgBox("Die Entfernung beträgt " & KM.ToString() & " KM") Anmerkung: |