Mask
دوشنبه 26 دی 1390, 21:25 عصر
با سلام.
قبلا یه همچین کاری رو در دلفی بدون مشکل انجام میدادم.
اما نمیدونم چرا در دلفی Xe نمیشه.
اکه ممکنه دوستان یه نیگا بندازن.
ممنون.
سرور :
procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);
var
memrecieveStreamPic,s:TMemoryStream;
begin
memrecieveStreamPic:=TMemoryStream.Create;
try
AContext.Connection.IOHandler.ReadStream(memreciev eStreamPic);
memrecieveStreamPic.Position:=0;
image1.Picture.Graphic.LoadFromStream(memrecieveSt reamPic);
finally
memrecieveStreamPic.Free;
end;
end;
کلاینت :
procedure TForm1.Button1Click(Sender: TObject);
var St:TMemoryStream;
BMP: TBitmap;
Jpg: TJPEGImage;
c:TCanvas;
hosts:string;
ports:Integer;
begin
hosts:='127.0.0.1';
ports:=strtoint(Edit1.Text);
if IdTCPClient1.Connected then
IdTCPClient1.Disconnect;
IdTCPClient1.Host:=hosts;
IdTCPClient1.port:=ports;
IdTCPClient1.Connect;
St:=TMemoryStream.Create;
BMP := TBitmap.Create;
Jpg:= TJPEGImage.Create;
c:=TCanvas.Create;
try
BMP.Width := Screen.Width;
BMP.Height := Screen.Height;
c.Handle:=GetDC(GetDesktopWindow);
BMP.Canvas.CopyRect(Rect(0,0,BMP.Width,BMP.Height) ,c,Rect(0,0,Screen.Width,Screen.Height));
form1.image1.Picture.Bitmap.Assign(bmp);
bmp.SaveToStream(st);
St.Position:=0;
IdTCPClient1.IOHandler.Write(st) ;
finally
st.free;
BMP.Free;
Jpg.Free;
c.Free;
IdTCPClient1.Disconnect;
end;
end;
قبلا یه همچین کاری رو در دلفی بدون مشکل انجام میدادم.
اما نمیدونم چرا در دلفی Xe نمیشه.
اکه ممکنه دوستان یه نیگا بندازن.
ممنون.
سرور :
procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);
var
memrecieveStreamPic,s:TMemoryStream;
begin
memrecieveStreamPic:=TMemoryStream.Create;
try
AContext.Connection.IOHandler.ReadStream(memreciev eStreamPic);
memrecieveStreamPic.Position:=0;
image1.Picture.Graphic.LoadFromStream(memrecieveSt reamPic);
finally
memrecieveStreamPic.Free;
end;
end;
کلاینت :
procedure TForm1.Button1Click(Sender: TObject);
var St:TMemoryStream;
BMP: TBitmap;
Jpg: TJPEGImage;
c:TCanvas;
hosts:string;
ports:Integer;
begin
hosts:='127.0.0.1';
ports:=strtoint(Edit1.Text);
if IdTCPClient1.Connected then
IdTCPClient1.Disconnect;
IdTCPClient1.Host:=hosts;
IdTCPClient1.port:=ports;
IdTCPClient1.Connect;
St:=TMemoryStream.Create;
BMP := TBitmap.Create;
Jpg:= TJPEGImage.Create;
c:=TCanvas.Create;
try
BMP.Width := Screen.Width;
BMP.Height := Screen.Height;
c.Handle:=GetDC(GetDesktopWindow);
BMP.Canvas.CopyRect(Rect(0,0,BMP.Width,BMP.Height) ,c,Rect(0,0,Screen.Width,Screen.Height));
form1.image1.Picture.Bitmap.Assign(bmp);
bmp.SaveToStream(st);
St.Position:=0;
IdTCPClient1.IOHandler.Write(st) ;
finally
st.free;
BMP.Free;
Jpg.Free;
c.Free;
IdTCPClient1.Disconnect;
end;
end;