*freu* hab herausgefunden, wie man zumindestens eine Datei mit der TICQlib empfängt
Delphi-Quellcode:
var uppto: string;
_file: TFilestream;
implementation
procedure TForm1.ICQClient1FTStart(Sender: TObject; StartRec: TFTStartRec;
FileName: string; FileSize, Speed: Cardinal);
begin
_file := TFilestream.Create(uppto, fmCreate);
icqclient1.FTStartResponse(startrec);
end;
procedure TForm1.ICQClient1FTRequest(Sender: TObject;
RequestRec: TFTRequestRec);
begin
if uppto <> '' then
begin
icqclient1.FTResponse(requestrec, true, 'Copying the file to' + uppto);
timer2.Enabled := false;
end
else
begin
icqclient1.FTResponse(requestrec, false,
'Please use the PUT-command first!');
icqclient1.SendMessage(requestrec.UIN, 'Please use the PUT-command first!')
end;
end;
procedure TForm1.ICQClient1FTFileData(Sender: TObject; UIN: Cardinal;
Data: Pointer; DataLen: Cardinal; LastPacket: Boolean);
begin
_file.Write(data^, datalen);
if lastpacket then
timer3.Enabled := true;
end;
procedure TForm1.Timer3Timer(Sender: TObject);
begin
timer3.Enabled := false;
_file.Free;
end;
Das mit dem Timer ist zwar DirtyProgramming, allerdings kam immmer eine Fehlermeldung wenn ich das .free zu dem if lastpacket geschrieben habe (auch mit try-finally), deshalb der Timer...
...Was ich aber immer noch nicht herausgefunden habe, ist wie man eine Datei an jemanden schickt - immer wenn ich SendFileDC benutzt habe passierte rein gar nichts - kann da vllt einer helfen? *pleeeease*