Hallo Leute,
ich habe ein ganz simples Programm mit nur einem Modul und einem Formular. Das Formular wird über eine Main-Sub aufgerufen.
Mit dem Programm möchte ich Google-Maps aufrufen und um Verbindungen anzuzeigen.
Das funktioniert einwandfrei.
Ich möchte aber immer nur eine Instanz starten und das geöffnete Formular bzw. den Webbrowser aktualisieren.
Das mit einer Instanz klappt schon, aber nicht mit dem aktualisieren des Webbrowsers.
Was mache ich denn falsch?
Main-Prozedur:
Spoiler anzeigen
Kann mir einer vielleicht ein Schubs in die richtige Richtung geben?
Vielen Dank im Voraus.
Gruß Achilleus
ich habe ein ganz simples Programm mit nur einem Modul und einem Formular. Das Formular wird über eine Main-Sub aufgerufen.
Mit dem Programm möchte ich Google-Maps aufrufen und um Verbindungen anzuzeigen.
Das funktioniert einwandfrei.
Ich möchte aber immer nur eine Instanz starten und das geöffnete Formular bzw. den Webbrowser aktualisieren.
Das mit einer Instanz klappt schon, aber nicht mit dem aktualisieren des Webbrowsers.
Was mache ich denn falsch?
Main-Prozedur:
VB.NET-Quellcode
- Module MdlMain
- Public Sub Main()
- Dim inputArgument As String = "/"
- Dim i As Integer
- For Each s As String In Environment.GetCommandLineArgs
- i = i + 1
- If s.ToLower.StartsWith(inputArgument) Then
- If s.Contains("Google") Then
- Dim Adress() = s.Split(";"c)
- Dim sLinkStart As String = Adress(1)
- Dim sLinkZiel As String = Adress(2)
- sLinkStart = "saddr=" & sLinkStart.Replace(" ", "+").Replace(",", "")
- sLinkZiel = "daddr=" & sLinkZiel.Replace(" ", "+").Replace("ö", "oe").Replace("ü", "ue").Replace("ä", "ae").Replace("ß", "ss").Replace(",", "")
- Call SearchGoogleAdress(sLinkStart, sLinkZiel)
- End If
- End If
- Next
- End Sub
- ' Anwendung bereits gestartet?
- Public Function AppPrevInstance(Optional ByVal bShowMsg As Boolean = True,
- Optional ByVal bAppActivate As Boolean = True) As Boolean
- ' Anzahl der gestarteten Prozesse der eigenen Anwendung
- If Process.GetProcessesByName(Process.GetCurrentProcess.ProcessName).Length > 1 Then
- ' Erst-Anwendung aktivieren
- If bAppActivate Then
- AppActivate(Process.GetProcessesByName(Process.GetCurrentProcess.ProcessName)(1).Id)
- End If
- Return True
- Else
- Return False
- End If
- End Function
- Public Sub SearchGoogleAdress(sLinkStart As String, sLinkZiel As String)
- Dim sLink As String = "https://maps.google.com/maps?" & sLinkStart & "&" & sLinkZiel
- If AppPrevInstance() Then
- With FrmGoolgeMaps
- .WB_GooglMaps.Navigate(sLink)
- End With
- Else
- With FrmGoolgeMaps
- .WB_GooglMaps.Navigate(sLink)
- .ShowDialog()
- End With
- End If
- End Sub
- End Module
Kann mir einer vielleicht ein Schubs in die richtige Richtung geben?
Vielen Dank im Voraus.
Gruß Achilleus