Announcement

Collapse
No announcement yet.

GPS Koordinaten bekommen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • GPS Koordinaten bekommen

    Hallo zusammen, ich bin neu hier,

    ich bin auch neu im VB.Net Bereich, ich hab vor langer Zeit mal was mit VB gemacht, allerdings bin ich dann zwischenzeitlich bei PHP hängen geblieben.

    Nichts desto trotz möchte ich nun eine Anwendung für Windows Mobile mit VB.Net programmieren.

    Jetzt möchte ich auch gerne die Daten des GPS Empfängers auslesen, nur bekomme ich keinen Serial Port geöffnet

    getPortNames() liefert mir COM1,COM3 und COM5, jedoch löst die open-Methode bei COM3 und 5 eine IOException aus und behauptet auch noch ganz dreist COM1 würde überhaupt nicht existieren.

    Ich habe gegoogelt ohne Ende und komme zu keinem Ergebnis.

    Ich hoffe wir können das zusammen lösen. Wenn es andere Wege gibt an die GPS-Daten ranzukommen, lass ich mich natürlich gerne belehren.

    Danke im Vorraus und Gruß
    Cy

  • #2
    Hallo,

    da gibts doch genug: http://www.google.at/search?hl=de&q=...le-Suche&meta=

    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Ja klar, ich sag ja auch nicht das ich bei google nichts finde, sondern das alles nichts nützt. Dieser einfache Code funktioniert schon nicht, er wirft o.g. Fehler bei open() aus.

      Code:
      Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
      
              Dim ports() As String = SerialPort.GetPortNames()
      
              For i = 0 To ports.Count() - 1
      
                  Dim SPort As SerialPort = New SerialPort(ports(i))
      
                  Try
      
                      SPort.Open()
      
                      SPort.Close()
      
       
      
                  Catch ex As Exception
      
                      MsgBox(ex.Message)
      
                  End Try
      
      
              Next
      End Sub

      Comment


      • #4
        Welche Fehlermeldung kommt - bei mir gehts nämlich. Ohne Meldung kann ich keine Auskunft geben.

        mfG Gü
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment


        • #5
          Hab ich das nicht gesagt? Erst kommt COM1 doesn't exist (oder so ähnlich) und dann 2 mal einfach IOException (für COM3 und 5). Den Code finde ich so oder ähnlich überall, das ist ja der Grund warum ich nicht verstehe das es nicht geht. Oder liegts vielleicht am Emulator? (Windows Mobile 6 Professional SDK) Muss ich da was besonderes einstellen?

          Comment


          • #6
            getPortNames() liefert mir COM1,COM3 und COM5, jedoch löst die open-Methode bei COM3 und 5 eine IOException aus und behauptet auch noch ganz dreist COM1 würde überhaupt nicht existieren.
            Das ist keine Fehlermeldung. Die sehen so aus:
            Code:
            {"Der Anschluss COM57 ist nicht vorhanden."}
            
               bei System.IO.Ports.InternalResources.WinIOError(Int32 errorCode, String str)
               bei System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
               bei System.IO.Ports.SerialPort.Open()
               bei ConsoleApplication1.Program.Main(String[] args) in C:\Dokumente und Einstellungen\gfoidl\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\ConsoleApplication1\Program.cs:Zeile 14.
               bei System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
               bei System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
               bei Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
               bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)
               bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
               bei System.Threading.ThreadHelper.ThreadStart()
            Aber es liegt wahrscheinlich am Emulator. Was du dort einstellen musst weiß ich nicht. Kannst du es auf einem mobilen Gerät probieren?
            Wenn ja: treten die Fehler dort auch auf?

            mfG Gü
            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

            Comment


            • #7
              aha, wieder was dazu gelernt wo man solche Fehlermeldungen herbekommt

              Code:
              System.IO.IOException wurde nicht behandelt.
                Message="The port 'COM1:' does not exist."
                StackTrace:
                     at System.IO.Ports.SerialStream.WinIOError(Int32 errorCode, String str)
                  at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
                  at System.IO.Ports.SerialPort.Open()
                  at cdsupdmgr.Form1.Form1_Load(Object sender, EventArgs e)
                  at System.Windows.Forms.Form.OnLoad(EventArgs e)
                  at System.Windows.Forms.Form._SetVisibleNotify(Boolean fVis)
                  at System.Windows.Forms.Control.set_Visible(Boolean value)
                  at System.Windows.Forms.Application.Run(Form fm)
                  at cdsupdmgr.Form1.Main() 
                InnerException:
              Code:
              System.IO.IOException wurde nicht behandelt.
                Message="IOException"
                StackTrace:
                     at System.IO.Ports.SerialStream.WinIOError(Int32 errorCode, String str)
                  at System.IO.Ports.SerialStream.WinIOError(Int32 err)
                  at System.IO.Ports.SerialStream.CheckResult(Int32 err, Boolean bluetooth, Boolean changingState)
                  at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
                  at System.IO.Ports.SerialPort.Open()
                  at cdsupdmgr.Form1.Form1_Load(Object sender, EventArgs e)
                  at System.Windows.Forms.Form.OnLoad(EventArgs e)
                  at System.Windows.Forms.Form._SetVisibleNotify(Boolean fVis)
                  at System.Windows.Forms.Control.set_Visible(Boolean value)
                  at System.Windows.Forms.Application.Run(Form fm)
                  at cdsupdmgr.Form1.Main() 
                InnerException:
              Sowas willst du, ja? Im Moment hab ich gerade leider kein Gerät da zum testen, aber das muss doch auch irgendwie im Emulator funktionieren.

              Comment


              • #8
                Somit kann festgestellt werden dass es am Emulator liegt. Denn mit
                [highlight=vb.net]
                Dim ports() As String = SerialPort.GetPortNames()
                [/highlight]
                werden die Port-Names des aktuellen Computer abgerufen.

                Zum Einstellen hilft vielleicht das: http://weimenglee.blogspot.com/2007/...n-windows.html

                mfG Gü
                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                Comment


                • #9
                  Originally posted by gfoidl View Post
                  Somit kann festgestellt werden dass es am Emulator liegt. Denn mit
                  [highlight=vb.net]
                  Dim ports() As String = SerialPort.GetPortNames()
                  [/highlight]
                  werden die Port-Names des aktuellen Computer abgerufen.

                  Hö? Wenn ich GetPortNames() in einer einfachen Windows-Forms-Anwendung auf dem PC laufen lasse, kommen da aber ganz andere COM-Port-Namen bei raus, also noch viel mehr... aber danke für den Link, den werd ich mir mal anschauen.

                  Comment


                  • #10
                    Der aktuelle Computer sollte bei Verwendung des Emulator wohl der Emulator sein?!

                    mfG Gü
                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                    Comment


                    • #11
                      Originally posted by gfoidl View Post
                      Der aktuelle Computer sollte bei Verwendung des Emulator wohl der Emulator sein?!

                      mfG Gü
                      So wars ja auch gedacht, deswegen hab ich deine Aussage nicht so ganz kapiert... naja, aber der Link hilft mir leider auch nicht weiter, denn da geht es ja darum wie man den Emulator überhaupt zum laufen bekommt und der läuft ja...

                      Comment

                      Working...
                      X