Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
unitUnit1; interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ScktComp, StdCtrls; type
TForm1 = class
(TForm) ClientSocket1: TClientSocket; ServerSocket1: TServerSocket; btnTestSockets: TButton; procedure
ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); procedure
FormCreate(Sender: TObject); procedure
FormDestroy(Sender: TObject); procedure
ClientSocket1Disconnect(Sender: TObject; Socket: TCustomWinSocket); procedure
ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket); procedure
ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket); procedure
btnTestSocketsClick(Sender: TObject); private
FStream: TFileStream; { Private-Deklarationen } public
{ Public-Deklarationen } end
; var
Form1: TForm1; implementation
{$R *.dfm} procedure
TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); var
iLen: Integer; Bfr: Pointer; begin
iLen := Socket.ReceiveLength; GetMem(Bfr, iLen); try
Socket.ReceiveBuf(Bfr^, iLen); FStream.Write(Bfr^, iLen); finally
FreeMem(Bfr); end
; end
; procedure
TForm1.FormCreate(Sender: TObject); begin
FStream := nil
; end
; procedure
TForm1.FormDestroy(Sender: TObject); begin
if
Assigned(FStream) then
begin
FStream.Free; FStream := nil
; end
; end
; procedure
TForm1.ClientSocket1Disconnect(Sender: TObject; Socket: TCustomWinSocket); begin
if
Assigned(FStream) then
begin
FStream.Free; FStream := nil
; end
; end
; procedure
TForm1.ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket); begin
FStream := TFileStream.Create('c:temptest.stream.html', fmCreate or
fmShareDenyWrite); end
; procedure
TForm1.ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin
Socket.SendStream(TFileStream.Create('c:temptest.html', fmOpenRead or
fmShareDenyWrite)); end
; procedure
TForm1.btnTestSocketsClick(Sender: TObject); begin
ServerSocket1.Active := True
; ClientSocket1.Active := True
; end
; end
.