Datei über offenen Port senden
-
Hallo, und zwar möchte ich ein Programm schreiben, welches es ermöglicht über das Netzwerk Dateien zu verschicken.
Es soll aber keine Anwendung sein, bei der auf beiden Rechnern ein Client vorhanden sein muss, sondern nur auf dem sendenden Rechner.Mein Gedanke war es, in der Firewall einen Port zu öffnen auf sätmlichen Rechnern und dann über diesen Port die Datei zu übertragen.
Allerdings weis ich nicht genau, wie ich die Datei an die entsprechenden Rechner senden kann.
Wie ich bei einer Client-Server-Anwendung eine Verbindung aufbaue ist mir bewusst. Allerdings gibt es hier ja dann keinen Server.
Hat jemand eventuell einen Tipp, wie genau das in C++ aussehen könnte?
-
inflames2k schrieb:
Es soll aber keine Anwendung sein, bei der auf beiden Rechnern ein Client vorhanden sein muss, sondern nur auf dem sendenden Rechner.
Wie stellst du dir das denn vor? Woher soll das Betriebssystem des Zielrechners denn wissen, was da am Port ankommt und was damit geschehen soll?
Wenn du keine Client-Server-Architektur haben möchtest, kommt als Alternative wohl nur die Peer-to-Peer-Architektur infrage.
Boost::Asio stellt dir einen guten Weg bereit, Verbindungen herzustellen. Egal, ob von Server zu Client oder von Peer zu Peer.
-
Schade, hätte gedacht es funktioniert ohne das beide Seiten ein Programm benötigen. Aber manchmal sind meine Wünsche eben zu schön.
Werd es dann wohl doch per pear-to-peer machen. Danke

-
Wenn irgendwo ein Port "offen" ist, dann heisst das, das dort eine Anwendung auf diesem Port auf eine Verbindung wartet. Und diese Anwendung wird mit deinen Daten höchstwahrscheinlich nichts anfangen können, es sei denn du hast sie geschrieben um genau diese Daten zu empfangen und als Datei zu abzuspeichern.
BTW: Schieb das Zeug doch auf einen Webserver. Einen Browser zum Runterladen hat jeder.
-
Würde aber nicht ganz das erfüllen was ich vorhatte. - Egal, schreib ich eine Anwendung die auf besagtem Port lauscht und die Datei speichert.