- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 8 von 8

Thema: Pocket PC / Windows Mobile

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274

    Pocket PC / Windows Mobile

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    ich schlage mich gerade mit einem Problem herum!

    Ich habe für meinen Pocket PC (hat Windows Mobile 5 drauf) ein Programm (eigendlich ein Progrämmle) geschrieben das _soweit_ läuft.

    Ablauf:

    Mit dem Programm sende ich vom PPC über WLAN ein UDP-Paket (5 Bytes). Kommen diese beim Empfänger (PC) an (da läuft auch ein Progrämmle^^) geht jenachdem welche 5 Byte es sind ein Fenster mit unterscgiedlichen Meldungen auf (Tür auf / Fenster etc). Das klappt ja _soweit_!

    Sobald ich aber mit dem PPC den WLAN-Bereich verlasse bzw die Verbindung kurz unterbrochen wird (durch Störung wie Funkkamera, Stromausfall) und danach wieder vorhanden ist, stürzt mir das Programm ab!

    Ich hab schon das Internet quer durchgesucht, aber da ich noch Anfänger bin nutze ich warscheinlich die falschen Suchbegriffe!

    Es muss doch eine Möglichkeit geben diesen Fehler abzufangen und auszuwerten? Ich hab auch schon versucht vor jedem Senden die Verbindung zu öffnen, senden und dann zu schließen. Aber das geht anscheinend auch nicht. Erst wenn ich das Programm beende und neu starte ist alles IO.

    Die Fehlermeldung :

    "Ein Vorgang bezog sich auf ein Objekt, das kein Socket ist"

    System.Net.Sockets.Socket.ConnectNocheck()
    System.Net.Sockets.Socket.Connect()
    System.Net.Sockets.UdpClient.Connect()
    System.Net.Sockets.Socket.Connect()

    Ich benutze Visual Studio 2005 VB.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    das ist schwierig ohne den code zu wissen, connectest du denn jedesmal erst den udp-socket bevor du sendet/empfängst ? kapsle mal alle befehle die du wirkst mit try catch blöcken ein und gib eine sinnvolle fehlermeldung aus wenn es mal micht klappt, so sollte dein programm auch nicht permanent abstürzen

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274
    Hi,

    also ich hab es so :

    Code:
                Try
                    udpClient.Send(bytCommand, bytCommand.Length)
                Catch e As Exception
                    textcode = e.ToString()
                End Try
    Hinzugefügt hab ich jetzt mal

    Code:
                MsgBox(textcode)
    Jetzt stürtzt es zwar nicht mehr ab, aber ich hab auch keine Verbindung mehr. bei jedem Senden kommt diese Fehlermeldung^^

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    huh ? visual basic O_o ?
    ok ich benutze c# ich kündige schonmal mein unverständnis an wenn da noch mehr code kommt ich bin ein c idiot

    was meldet er denn ? die exception sollte eventuell sinnvolle debugausgaben beinhalten ... by the way wenn du mit visual studio arbeitest kannst du auch mit dem PC debuggen während das gerät angeschlossen ist ... jetzt frag mich aber bitte nicht wie, das hab ich vor nem halben jahr mal gemacht XD

    ich schreibe meine anwendungen alle immer erst für den PC und portiere sie wenn die perfekt sind

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274
    Zitat Zitat von Ceos
    ich bin ein c ***AUTOZENSIERT
    Aha, was macht man als c autozensierter so O_o

    Zitat Zitat von Ceos
    ok ich benutze c# ich kündige schonmal mein unverständnis an wenn da noch mehr code kommt i
    Visual Studio hat ja den gleichen Compiler. Nur der Dialekt C/C#/VB ist halt anderst. C# nach VB kann man im kleinen Rahmen sogar selber umstricken^^.


    Zitat Zitat von Ceos
    wenn du mit visual studio arbeitest kannst du auch mit dem PC debuggen während das gerät angeschlossen ist ...
    Ja das geht wunderbar! Einfach F5, Ziel Gerät wählen und feuer...
    ABER:

    Beim Debugen wird die WLAN-Karte deaktiviert O_o^^

    Also komm ich da nicht weiter^^

    Auf jedenfall hab ich diese Fehlermeldung jetzt in einem Fenster. So wie es aussieht kann ich das Problem so garnicht abfangen. Sobald die Verbindung weg ist, ist auch der Socket anscheinend weg (und bleibt weg).

    Neu öffnen bzw Connecten geht da nicht mehr. Die Fehlermeldung besagt das es kein Socket mehr gibt. Auch nach jedem Senden den Socket zu schließen geht irgendwie nicht! Zumindest benutz ich

    Code:
    udpClient.Close()

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    es sollte c- i d i o t heissen ... grummel ... das mitm debuggen iss ja doof ... ich kann dir leider nicht vor 16uhr helfen, sitze hierauf arbeit fest und hab nur BDS2k6 .. VS hab ich aufm PC zu hause ... theoretisch sollte schliessen und neu öffnen aber gehen .... hmmmm komisch versuch dich mal auf www.c-plusplus.de/forum da werden sie manchmal auch geholfen, aber vorsicht da sind se reichlich unfreundlich bei ungünstiger fragenstellung

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274
    Lol c... Naja, wer c kann, kann auch alles andere^^ Ich hab mit C aufgehört, da es mir zu umständlich ist und mit vb bzw b ich schneller ans ziel komm.

    Ist nicht so wild! Ist ja ein Hobbyprojekt! Ich wer mal durch einige Foren suchen. Eventuell ist das ein problem mit vs 2005 vb 2005

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    suchen ist immer gut, vll. kann hier noch wer helfen, aber woran es unter GARANTIE nicht liegt ist VB2k5 ^_^

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen