![]() |
screenshot (bild) vom server zum clienten senden? [Gelöst]
Liste der Anhänge anzeigen (Anzahl: 1)
hallo alle!
ich brauche schon wieder dringen eure hilfe. ich möchte ein screenshot vom server zu clienten senden. mit den komponenten tserver / Tclientsocket. das mit den screenshots bekomm ich hin aber die bild datei dann an den clienten zu senden, bekomm ich einfachn nicht hin. es kommt immer eine datei mit 0 kb an. vieleicht könnte mir jemand eine kleine (einfache) demo geben? ich suche schon seit 16:00 uhr bis jetzt 2:30 und ich komm einfach nicht weiter. für jede hilfe währe ich dankbar. wenn sich jemand das programm ansehen will, dann werde ichs mailen. den quelltext will ich deshalb hir nicht posten da er schon so gross ist und ich keine ahnung hab welchen teil ich hir reinposten sollte, weil das schon ein ziemliches durcheinander ist. mfg. hari |
Re: screenshot (bild) vom server zum clienten senden?
Sind bei den Indys keine Demos dabei?
|
Re: screenshot (bild) vom server zum clienten senden?
Zitat:
ich hab ja schon vieles darüber gefunden, und auch gehört das es geht, aber scheinbar mache ich irgend etwas falsch. deshalb wollte ich eine demo haben, wo ich mir das ansehen kann. oder das es jemand für mich "deppensicher" : :roteyes: erklärt. |
Re: screenshot (bild) vom server zum clienten senden?
Hi, entferne bitte die Aufforderung Dir die Lösung als Email zuzusenden (inkl. der Adresse). Entweder Du zahlst für eine spezielle Lösung oder die Lösung ist für alle :zwinker:
...:cat:... |
Re: screenshot (bild) vom server zum clienten senden?
ich habs geschaft!!! jetzt kann ich entlich auch vom client zum server senden ohne das nur 8,00kb ankommen, und zwar so:
DER SERVER
Code:
DER CLIENT
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ScktComp; type TForm1 = class(TForm) ServerSocket1: TServerSocket; Label1: TLabel; procedure ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; FStream: TFileStream; implementation {$R *.dfm} procedure TForm1.ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin FStream := TFileStream.Create('C:\temp\screenshothari.bmp', fmOpenRead); Socket.SendStream(FStream); end; end.
Code:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ScktComp, ExtCtrls; type TForm1 = class(TForm) ClientSocket1: TClientSocket; Label1: TLabel; Button1: TButton; procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); procedure Button1Click(Sender: TObject); procedure ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; FStream: TFileStream; SizeOfFile: Integer; pBuffer: Pointer; AlreadyReceived: integer; FileStream: TFileStream; Buffer: array[0..4096] of Byte; // die Größe des Puffers ist beliebig, müsste nur (s.u.) SizeOfBuffer: integer; implementation {$R *.dfm} procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); var Buffer: array[0..4096] of Byte; // die Größe des Puffers ist beliebig, müsste nur (s.u.) SizeOfBuffer: integer; begin pBuffer := @Buffer; SizeOfBuffer := Socket.ReceiveBuf(pBuffer^, 4096); //hier angeglichen werden FileStream.Write(pBuffer^, SizeOfBuffer); Inc(AlreadyReceived, SizeOfBuffer); Socket.SendText(IntToStr(AlreadyReceived)); end; procedure TForm1.Button1Click(Sender: TObject); begin ClientSocket1.Active:=false; filestream.Free; end; procedure TForm1.ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket); begin FileStream := TFileStream.Create('c:\temp\datei2.bmp', fmCreate or fmOpenWrite); end; end. mfg. hari |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:57 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