User Passwort
 Passwort speichern Passwort vergessen?
 
 
 
 Alle Foren
 PDA-Dev :: Windows Mobile
 VB.NET
 Dateiaustausch PDA<=>PC via GPRS
Autor Vorheriges Thema Thema Nächstes Thema  

UweK

PDA-Programmierer


37 Beiträge

Erstellt am: 19.03.2009 :  15:50:44 Uhr  Profil anzeigen  Autor eine Email senden  Besuche UweK's Homepage  Antwort mit Zitat
Hallo Forum,
ich möchte gerne mit einer PDA-VB.NET Anwendung XML-Dateien via GPRS/EDGE/UMTS/HSDPA
mit einem PC austauschen bzw. abgearbeitete Dateien vom PDA auf den PC senden und vom PDA
aus auch neue Dateien vom PC abholen.
Ich habe nun schon tagelang gegoogelt und mich durch verschiedene Foren (auch durch PDA-Dev) durchgelesen und auch einiges gefunden. So z.B. die Schlagworte:
-ConnMgr
-Socket
-TCP/IP Listener
-SOAP
-WebService
-FTP
-OpenNetCF
Allerdings weiß ich nicht so recht wie ich das umzusetzen bzw. wie ich anfangen soll.
Vielleicht kann mir jemand von Euch weiterhelfen. Es soll eine möglichst einfach zu implemtierende Lösung sein.
PDA -> Button_Click -> GPRS Verbindung wird aufgebaut -> Datei wird zum normalen PC mit
Internetanschluss übertragen -> GPRS Verbindung wird abgebaut
PDA -> Button_Click -> GPRS verbindung wird aufgebaut -> Datei wird vom normalen PC mit Internetanschluss abgeholt
Das Ganze soll ohne VPN, Exchange Server, DynDNS etc. funktionieren.
Wie stelle ich das am besten an?
WebService?
FTP?
Hat jemand vielleicht Beispielcode für mich?
Bin auf dem Gebiet noch ziemlich neu.
Welcher Voraussetzungen müssen am PC gegeben sein?
Vielen Dank für Eure Hilfe.
Gruß,
Uwe.
   

pda-dev

pda-dev

Forum Admin


554 Beiträge

Erstellt  am: 21.03.2009 :  11:04:43 Uhr  Profil anzeigen  Autor eine Email senden  Besuche pda-dev's Homepage  Sende pda-dev eine ICQ Message  Antwort mit Zitat
Hi Uwe,
ich versuche mal, die Schlagworte zu sortieren:
egal wie du die Datei letztendlich übertragen willst, erst musst du eine (Internet-)Verbindung aufbauen, wie du sagst via GPRS. Dazu bietet OpenNetCF eine Hilfsklasse, genannt ConnectionManager oder ConnMgr.
Das wäre das erste.
Zum eigentlichen Übertragen der Datei würde sich ein Web Service anbieten, der auf dem PC läuft und zu dem sich der PDA als Client verbindet und die Daten im XML Format sendet und empfängt. (Nebenbei, falls du dir weitere Infos ergoogeln willst: das zugehörige Übertragungsprotokoll heisst SOAP).
Damit du dich mit dem Web Service auf dem PC verbinden kannst, musst du dessen IP-Adresse oder Hostname wissen. Ergo braucht dein PC als Vorraussetzung eine feste IP-Adresse oder einen Hostnamen, was leider nur nur mit DynDNS möglich ist, das du ja aber nicht einsetzen willst .
Ansonsten fällt mir noch folgender Kompromiss ein, der aber natürlich eher eine unsaubere Lösung darstellt: du schiebst die Datei vom PDA aus auf einen zentralen FTP-Server. Der PC fragt diesen Server in regelmäßigen Abständen nach Änderungen ab, wenn es eine Änderung gibt läd er die geänderte Datei runter, verarbeitet sie und stellt als "Antwort" eine neue Datei auf den Server, wo sie wieder vom PDA abgeholt werden kann. Klingt nicht nur abenteuerlich, sondern ist es auch
Gruß,
Frank

Ein Computer wird nie das tun, was du willst - sondern das, was du programmierst!
Zum Anfang der Seite

UweK

PDA-Programmierer


37 Beiträge

Erstellt  am: 23.03.2009 :  11:07:38 Uhr  Profil anzeigen  Autor eine Email senden  Besuche UweK's Homepage  Antwort mit Zitat
Hallo Frank,
erstmal vielen Dank für Deine Antwort.
So ungefähr hab ich mir das schon gedacht, dass beide Varianten
Vor- und Nachteile mit sich bringen.
Das mit dem DynDNS kommt wie gesagt eher nicht in Frage.
Ich frage mich nur wie das denn z.B. bei InstantMessengersystemen
funktioniert. Da kann man doch auch Dateien austauschen, ohne
dass man sich ne feste IP-Adressen über z.B. DynDNS holt!?
Die Lösung über FTP gefällt mir eigentlich auch nicht so besonders.
Aber was hab' ich sonst für ne Möglichkeit...
Ich frage mich auch, wie machen das denn andere!?
Solche Lösungen gibt es doch zu Hauf (Dateiübertragung über GPRS).
Ich kann mir nicht vorstellen, dass diese Systeme alle mit z.B. DynDNS arbeiten, oder!?
Hast Du oder sonst wer im Forum vielleicht noch ne Idee?
Vielen Dank im Voraus für Eure Mühe!
Gruß,
Uwe.
Zum Anfang der Seite

Useless user

PDA-Spezialist


465 Beiträge

Erstellt  am: 23.03.2009 :  18:11:27 Uhr  Profil anzeigen  Besuche Useless user's Homepage  Antwort mit Zitat
Naja, für Privatpersonen ist DynDNS standard. Natürlich machen das nicht alle Systeme so. Wenn es um kommerzielle Lösungen geht, leistet man sich eine feste Domain, in der Client-Software wird diese Adresse fest hinterlegt. Das kostet aber in den meisten Fällen Geld. DynDNS ist dagegen kostenlos. Außerdem ist es wichtig von wo nach wo Daten ausgetauscht werden, bzw. wer die Aktion initiiert. Webservices sind immer vom Client aufgerufen - ein Server kann auf dem Client nicht direkt Aktionen auslösen. Der Server könnte höchstens eine Signalisierungsnachricht hinterlegen und der Client müsste permantent prüfen ob was hinterlegt ist.
Zum Anfang der Seite

Enno80

PDA-Interessierter


11 Beiträge

Erstellt  am: 23.03.2009 :  20:49:39 Uhr  Profil anzeigen  Autor eine Email senden  Antwort mit Zitat
Hallo Uwe,
ich hatte vor kurzem genau das gleiche Problem, habe mich dann aber für DynDNS entschieden in Verbindung mit einem Webservice. Ich weiß von anderen, die es genau so machen, nur die meisten kommerziellen Entwickler haben einen eigenen Webserver im Keller oder haben sich einen gemietet. Ich weiß jetzt nicht so genau was das kostet, aber das hält sich alles im Rahmen. Ich schätze so ca. 10 Euro im Monat mit Datenbank und Domain. Ich vermute das du den Webservice mit ASP.NET entwickeln würdest.
Gruß Enno
Zum Anfang der Seite

UweK

PDA-Programmierer


37 Beiträge

Erstellt  am: 24.03.2009 :  10:25:20 Uhr  Profil anzeigen  Autor eine Email senden  Besuche UweK's Homepage  Antwort mit Zitat
Hallo Useless, hallo Enno,
vielen Dank für Eure Antworten/Tipps!!
Das Ganze sollte eben mit so wenig wie möglich Aufwand auf den Zielsystemen implementiert
werden können. Ich denke, ich werde einfach mal beide Lösungen (FTP und WebService)
genauer unter die Lupe nehmen.
Was die WebService-Lösung angeht müsste ich ja dann eigentlich nur auf Client bzw. PDA-Seite, die IP-Adresse bzw. den Hostnamen des Host bzw. Servers auf dem der WebService
läuft, in einem INI-File oder der Registry hinterlegen. Wenn ein Anwender eine eigene
Domain hat, dann ist es eben die, ansonsten muss eben DynDNS herangezogen werden.
Das Problem dabei ist nur, dass mehrere PDA-Anwender auf "Ihre eigenen" XML-Files zugreifen müssen. Das heißt es müsste eine Verzeichnisstruktur geben.
Z.B. Anwender Müller sendet seine abgearbeiteten XML-Dateien auf den Host in das
Verzeichnis //Mueller/UpLoad/ und holt sich seine abzuarbeitenden Dateien aus dem Verzeichnis //Mueller/DownLoad/.
Andere Anwender eben analog mit anderen Namen.
Ist sowas über die WebService-Lösung abzubilden?
Denn die Hauptanwendung die, die XML-Dateien zum abarbeiten bereitstellt und die
abgearbeiteten XML-Dateien weiterverarbeitet, läuft ja nicht auf nem Webserver sondern
auf nem normalen PC mit Internetanschluss. Mit DynDNS wäre ja dann dieser PC quasi der
"WebServer". Bei vorhandenem "richtigen" WebServer müssten die Dateien ja dann eigentlich
vom normalen PC erst noch auf den WebServer gestellt werden.
Ist der Gedankengang überhaupt so richtig oder bin ich total auf dem Holzweg?
Ich habe von WebServices bislang null Ahnung...
Bei der FTP-Lösung wäre das ja ohne weiteres möglich.
Die XML-Dateien werden von der Hostanwendung in den entsprechenden Verzeichnissen auf dem
FTP-Server abgelegt und auch von dieser dort abgeholt.
Ich frage mich halt, welcher Weg ist der
- einfachste
- sicherste
- performanteste
- "sauberste"
und welche Komplikationen können ggf. bei beiden Lösungen auftreten?
Vielen Dank im Voraus für Eure Antworten!!
Gruß,
Uwe.
Zum Anfang der Seite

Enno80

PDA-Interessierter


11 Beiträge

Erstellt  am: 24.03.2009 :  11:49:06 Uhr  Profil anzeigen  Autor eine Email senden  Antwort mit Zitat
Hallo Uwe,
benutzerabhänige Daten bereitstellen oder entgegennehmen können beide Systeme, der entscheidende Unterschied ist wohl die Erweiterbarkeit und Kompatibilität.
Einfach sind beide Systeme. Vielleicht ist FTP etwas einfacher, weil Serverseitig nichts programmiert werden muss.
Die Sicherheit hängt von mehreren Faktoren ab. Aber generell sind beide Systeme relativ sicher.
Performanter ist vermutlich FTP, weil der SOAP Overhead fehlt.
Sauberer ist wieder Webservice, weil das FTP zum einen nicht sehr einheitlich ist, es gibt von FTP-Server zu FTP-Server große Unterschiede. Und zum anderen ist der Webservice besser erweiterbar. Man könnte zum Beispiel die Daten direkt vom Server zum Client schicken ohne die Daten in einer Datei zu speichern.
Fazit: Wenn du nur eine kleine Anwendung baust die zukünftig nicht mehr groß erweitert wird, würde ich dir FTP empfehlen. Andernfalls wäre ein Webservice die bessere Wahl.
Gruß Enno
Zum Anfang der Seite

Useless user

PDA-Spezialist


465 Beiträge

Erstellt  am: 24.03.2009 :  13:33:25 Uhr  Profil anzeigen  Besuche Useless user's Homepage  Antwort mit Zitat
Das mit den Daten in Form von Dateien hinlegen und dann irgendwann abholen ist eigentlich Unfug. Wenn es nicht einen guten Grund gibt es genau so zu machen dann würde ich das weglassen weil die Kommunikation viel zu indirekt ist. Der Webservice sollte die Daten sofort verarbeiten. Wenn ein Fehler auftritt, bekommt der Client sofort bescheid und kann darauf reagieren. Beim Abrufen von Daten funktioniert das genauso. Das ist vor allem in Anwendungsszenarien notwendig, in denen es sehr wichtig ist zu wissen ob die Daten schon übertragen wurden oder nicht.
Zum Anfang der Seite
  Vorheriges Thema Thema Nächstes Thema  
Springe nach:
 
  Bookmark & Share  
 
 
 
  Tags  
   
 

 



pda-dev.de

Quicklinks: Foren-Übersicht | Developer-News | Suche | Impressum

© just-works! Software

Zum Anfang der Seite

Snitz Forums 2000