![]() |
Indy : Datei von Server an Client senden
Moin,
ich möchte mit den Indy-Komponenten eine Datei vom Server an Client schicken. Konnte jedoch nur Infos zum Senden von Dateien vom Client zum Server finden. So z.B. bei den Indy-Beispeielen oder unter ![]() Wie stelle ich den Client auf "Empfangen"? Oder kennt jemand einen anderen Beitrag, der mir weiterhelfen könnte. Danke. Gruß Ben P.S.: Delphi 5 Standard + Indy 9 |
Re: Indy : Datei von Server an Client senden
Lustig, genau den Code habe ich erst letztens umgedreht^^
Womit wir auch schon beim Thema sind. EInfach umdrehen. Da der Server allerdings nicht einfach dem CLient was sagen kann, ohne das dieser das erwartet, solltest du den Client, wenn der die Datei möchte, dem Server dieses Mitteilen lassen. Hoffe die Informationen reichen erstmal, sonst sag bescheid. |
Datei von Server an Client senden - Software???
Zitat:
Bevor ich davon spreche noch etwas allgemeines. Ich habe folgende Ziel: Ich möchte Dateien von einem Quell-Computer zu einem Ziel-Computer über das Internet direkt verschicken können. Dazu folgende Anmerkungen:
Lösungvorschläge:
Bisher ist mir noch keine Lösung für dieses Problem eingefallen/ ist mir noch keine Software eingefallen, mit der ich dies realisieren kann. Achso, wäre auch nett, wenn man der Kommunikationsweg verschlüsselt wird. Vielleicht habt ihr ja einen Lösungsvorschlag bevor ich mir ein Tool bastel, obwohl es eine einfachere Lösung gibt. Ich werde mal abwarten, ob es Lösungsvorschläge gibt, bevor ich mich weiter mit meinem Problem bei der "Umdrehung" des Delphi Codes auseinandersetze - dann werde ich auch meine Probleme schildern. @inherited: Könntest du mir bitte trotzdem mal deinen Code schicken? Danke Gruß Ben |
Re: Indy : Datei von Server an Client senden
schon mal was von hamachi gehört?
damit lässt sich eine netzwerkverbindung über das internet herstellen, über die dann auch dateien feigegeben werden können. |
Re: Indy : Datei von Server an Client senden
Zitat:
@benst: Lass den Client einfach alle 10 sekunden oder was immer du da möchtest, den Server fragen ob es was neues gint. Dieser gibt dann jedesmal "nö" zurück, eben bis er etwas senden soll. |
Re: Indy : Datei von Server an Client senden
naja wie schon von inherited gesagt ist das die beste lösung
Zitat:
aber da ich ja gerne hilfsbereit bin hier der code: client:
Delphi-Quellcode:
server:
procedure TForm1.ti_dl_upTimer(Sender: TObject);
var FStream:tfilestream; lline_b:string; begin s_zspeicher:=eigenschaft1; IdTCPClient_filemanager.IOHandler.WriteLn('was neues?'); line_b:=IdTCPClient_filemanager.IOHandler.readln; if (line_b='dl_file') then begin FStream := TFileStream.Create('ieine datei', fmOpenRead); IdTCPClient_filemanager.iohandler.Write(Fstream,0,true); FreeAndNil(FStream); end else if (line_b='up_file') then begin FStream := TFileStream.Create('ieine datei',fmCreate); IdTCPClient_filemanager.IOHandler.ReadStream(fstream); freeandnil(fstream); end; end;
Delphi-Quellcode:
procedure TForm1.IdTCPServer_filemanagerExecute(AContext: TIdContext);
var was_tun,s_name:string; begin was_tun:=AContext.Connection.IOHandler.ReadLn; AContext.Connection.IOHandler.writeln('up/dl file');//was man halt will was_tun:='dl_file/up_file'; if (was_tun='dl_file') then begin FStream := TFileStream.Create('ieine datei', fmCreate); AContext.connection.IOHandler.ReadStream(fstream); FreeAndNil(FStream); end else if (was_tun='up_file') then begin FStream:=TFileStream.Create('ieine datei',fmOpenRead); AContext.connection.IOHandler.Write(Fstream,0,true); freeandnil(fstream); end; end; |
Re: Indy : Datei von Server an Client senden
Das ist aber Indy10, er benutrzt Indy 9...^^
Außerdem sollst du nichts verraten, er soll das ohne Klicki-Copy-Pasti-Bunti schaffen^^ |
Re: Indy : Datei von Server an Client senden
Danke...
Da es wohl noch etwas dauern wird, bis ich das Projekt wirklich am Laufen haben werde, habe ich erst einmal auf dem Quell-Computer einen SSH-Server (SFTP) installiert und das Gegenüber muss halt erst einmal doch die Aktionen durchführen. (Möchte die Daten ja eigentlich noch verschlüsseln und bis das alles fertig ist, kann das wirklich noch dauern.) Ich werde mich weiter damit auseinandersetzen - ihr habt mir ja schon gute Ansätze gegeben. Achso, noch etwas. Kann ich die Geschwindigkeit auch drosseln? Wenn ich mit voller Bandbreite an das Gegenüber hochlade, beschwert sich mein Mitbewohner, dass sein Spiel leckt. Ben |
Re: Indy : Datei von Server an Client senden
also mit der geschwindigkeitsbegrenzung habe ich hier schonmal nachgefragt aber keiner wusste was und bis jetzt habe ich auch noch nichts gefunden
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz