anon68680
Član broj: 68680 Poruke: 528 *.info-net.co.yu.
|
skoro sam postavio temu pitajuci kako da posaljem file preko TCP Client/Server komponente pa poshto niko nije znao kako pitao sam kako da posaljem preko bilo koje komponente, srki me je uputio u neke indy tcp komponente. poshto se ni tu nisam snasho iskoristio sam Client/Server Sockets.
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:\nekifile.html', fmCreate or fmShareDenyWrite);
end;
procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Socket.SendStream(TFileStream.Create('c:\neki_file.html', fmOpenRead or fmShareDenyWrite));
end;
procedure TForm1.btnTestSocketsClick(Sender: TObject);
begin
ServerSocket1.Active := True;
ClientSocket1.Active := True;
end;
predpostavljam da mozes poslati i naredbu za playsound() pri zavrsetku slanja filea. nadam se da je ovo ono na shta si mislio.
P.S. ako koristis Delphi 7 ili noviju verziju (ovde su po defaultu izbaceni client i server sockets) mozes installirati ove komponente na sledeci nacin:
Components>Install packages>ADD>"bin\dclsockets70.bpl
[Ovu poruku je menjao krza dana 30.09.2005. u 12:08 GMT+1]
|