Delphi --> remote Verbindung

Mayday171

Erfahrenes Mitglied
Hallo,

Ich möchte eine Anwendung in Delphi entwickeln mit der ich auf meine Festplatte zu Hause vom Arbeitsplatzrechner aus drauf zugreifen kann. Soll nach einem Server Client Prinzip laufen.

D.h. auf meinen Arbeitsplatzrechner ein Server, welcher ständig ein gewissen Port überwacht und auf den PC zu Hause eben einen Client der die Daten sendet.

Brauch da umbedingt mal einen Denkanstoß!! Ich komme nicht drauf wie ich da Anfangen könnte.

Vieleicht erstmal eine TCPServer und TCPClient Verbindung?
Aber wie bekomme ich dann Zugriff auf meine Festplatte zu Hause?
Gibt es irgendeine Komponentenlösung?

Kann ich vieleicht über die TCP Komponente andere Komponenten verschicken, wie z.B. eine TshellTreeList und die dann auf nach der Übertragung benutzen?



DANKE

MfG
 

Xo-mate

Erfahrenes Mitglied
Also erstmal ist der Rechner bei dir zu Hause der Server. (Der Server ist so gut wie immer der Teil der Applikation, der darauf wartet, dass jemand zu ihm connected und dann Daten empfängt und/oder weiterverschickt).
Der Rechner bei dir auf der Arbeit ist der Client. (Der connected zum Server bei dir zu Hause => Beim Client gibt man die Daten an, die zum Server führen (IP, Port).

Dann solltest du gucken, dass du DynDNS bei dir eingerichet kriegst oder alternativ ein Programm wie DynIP (http://www.freeware.de/software/Programm_DynIP_29392.html) benutzen, damit du die IP vom Server für den Client ermitteln kannst.

Was das Programmieren an sich angeht kann ich dir nicht weiterhelfen, da ich von Delphi nur Oberflächlich ne Ahnung hab ;)
 

Mayday171

Erfahrenes Mitglied
Es geht mir nicht um das Prinzip sondern um den grundlegenden Aufbau.
Kann ich z.B. mit dieser Send Methode aus der TcpClient Klasse ganze Komponenten bzw. nur die PFad Informationen verschicken wenn ja wie

Danke
 

Chronix

Erfahrenes Mitglied
Würde es so machen, dass du mit dem Client (Arbeit) auf den Server (Zuhause) connectest.
Der Server sendet dann den Inhalt eines Verzeichnisses an den Client (ähnlich wie ind er guten alten Konsole auf Textbasis.)
Guck wie du alle Dateien (respektive Dateinamen in) eines Verzeichnisses als Strings einlesen kannst und sie dann an den Client sendest.
Das übertragend er einzelnen Dateien wäre dann wohl so zu lösen, dass du die Dateien binär öffnest (geht ja bei jedem Dateityp) und einfach die Bits rüberschickst und der Client daraus wieder ne fertige Datei zusammenbastelt.
 

kos4live

Grünschnabel
Du könntest als Übertragungsmedium natürlich auch XML nehmen und dort alle relevanten Informationen rein packen, z.B. eben der Pfad wo du dich befindest, die Ordner und Dateien die sich darin befinden ...
Den XML-Source schickst du dann eben als String durch die Leitung zum Client oder eben als Requestanfrage vom Client zum Server.
Für XML gibts auch einige kostenlose Komponenten wie OmniXML.

Das was du meinst, quasi das ganze Komponenten-Abbild zu übertragen ist glaub ich so ohne weiteres nicht möglich, wenn auch nicht unmöglich. Dahingehen würd ich theoretisch beide Komponten sowohl beim Client als auch beim Server platzieren und auf dem Server nach laden des Verzeichnisses die Komponente bzw. den Inhalt Serializieren und dann zum Client schicken und dort der Komponente wieder zuweisen.
 

Twinsetter

Mitglied
Hol Dir die ICS-Komponenten von François PIETTE http://www.rtfm.be/fpiette. Dort gibt es eine FTP-Serverkomponente. Damit kannst Du ein kleines Progrämmchen zusammenbasteln, welches aus Deinem Heimrechner einen FTP-Server macht. Nun kannst Du von Arbeit aus mit einem FTP-Programm auf Deinen Rechner zugreifen und von dort Daten holen oder auch hinschicken. Ich hab mir sowas gemacht und das funktioniert seit Jahren bestens. Wenn Du statt eines fertigen FTP-Programmes auch da lieber was selber machen möchtest, dann gibt's in obiger Komponentensammlung auch noch einen FTP-Client mit dem Du so was machen kannst.

Gruß Twinsetter
 
Zuletzt bearbeitet: