AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TICQClient - Filetransfer
Thema durchsuchen
Ansicht
Themen-Optionen

TICQClient - Filetransfer

Offene Frage von "F0rc3"
Ein Thema von Neutral General · begonnen am 20. Mai 2007 · letzter Beitrag vom 13. Jun 2007
Antwort Antwort
Seite 2 von 2     12   
Daniel G
(Gast)

n/a Beiträge
 
#11

Re: TICQClient - Filetransfer

  Alt 21. Mai 2007, 20:06
Zitat von 3_of_8:
Mit Trillian nicht. *kratz*

Und zwar bei niemandem, den ich kenne.
Sicher, dass es unbedingt an Trillian liegt?
@Topic: Kann es evtl. auch daran liegen, dass ja vor nicht allzu langer Zeit mal wieder das Protokoll/die Version geändert wurde?
  Mit Zitat antworten Zitat
F0rc3

Registriert seit: 24. Mai 2006
Ort: /home/force/
29 Beiträge
 
#12

Re: TICQClient - Filetransfer

  Alt 12. Jun 2007, 14:05
[quote="Meflin"]
Zitat von 3_of_8:
Mit der TICQClient-Komponente würde ich mich aber nicht länger abplagen. Die ist doch heillos veraltet

Hm, hab auch ein paar Probleme den Filetransfer hinzukriegen ^^

Allerdings ist TICQClient die einzige Komponente die ich kenne und auch noch halbwegs funktioniert - welche würdest du denn nehmen?
  Mit Zitat antworten Zitat
Benutzerbild von alias5000
alias5000

Registriert seit: 10. Sep 2005
Ort: Heilbronn
268 Beiträge
 
#13

Re: TICQClient - Filetransfer

  Alt 12. Jun 2007, 19:58
So gesehen selber implementieren

Was anderes als TICQLib kenne ich auch nicht direkt. Nur die Plugins von Miranda sind IMHO auch in Delphi geschrieben. Müssten auch Open- Source sein
Im Interesse der Purierung des germanischen Ideoms ist es opertum den immensen Usus peregrieder Verben auf ein Minimum zu reduzieren.
--> www.lanchat2.de <---
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#14

Re: TICQClient - Filetransfer

  Alt 12. Jun 2007, 20:00
Zitat von F0rc3:
Allerdings ist TICQClient die einzige Komponente die ich kenne und auch noch halbwegs funktioniert - welche würdest du denn nehmen?
Es ist die einzige die ich kenne

Allerdings gibt es ja bei sourceforge im Bugtracker und zugehörigen Forum ein paar Workarounds, vielleicht ist es damit mit vertretbarem Zeitaufwand möglich das ganze zum funktionieren zu bringen, ich weiß es nicht, denn ich habe es noch nicht ausprobiert...

Schade dass sich der Autor nicht länger darum kümmert, aber auch irgendwo verständlich

  Mit Zitat antworten Zitat
F0rc3

Registriert seit: 24. Mai 2006
Ort: /home/force/
29 Beiträge
 
#15

Re: TICQClient - Filetransfer

  Alt 13. Jun 2007, 18:52
hab jetzt endlich rausbekommen, wie man eingehende Filetransfers akzeptieren kann:

Delphi-Quellcode:
procedure TForm1.ICQClient1FTRequest(Sender: TObject;
  RequestRec: TFTRequestRec);
begin
ICQClient1.FTResponse(RequestRec, True, '');
end;
Alelrdings wird die Datei nicht übertragen, da dann noch kein Ergeignis deklariert wurde was passiert wenn der Filetransfer gestartet wird (Miranda zeigt an: Moving to next file, es wird also auf eine Reaktion vom Empfänger gewartet)

Wahrscheinlich kann man das über folgende Procedures das irgendwie selbst hinkriegen:

Delphi-Quellcode:
procedure TForm1.ICQClient1FTInit(Sender: TObject; UIN, FileCount, TotalBytes,
  Speed: Cardinal; NickName: string);
begin

end;

procedure TForm1.ICQClient1FTFileData(Sender: TObject; UIN: Cardinal;
  Data: Pointer; DataLen: Cardinal; LastPacket: Boolean);
begin

end;

procedure TForm1.ICQClient1FTStart(Sender: TObject; StartRec: TFTStartRec;
  FileName: string; FileSize, Speed: Cardinal);
begin

end;
Hat jemand eine Idee??


/edit: mit

Delphi-Quellcode:
procedure TForm1.ICQClient1FTStart(Sender: TObject; StartRec: TFTStartRec;
  FileName: string; FileSize, Speed: Cardinal);
begin
icqclient1.FTStartResponse(startrec);
end;
Startet man den Filetransfer - allerdings ist sozusagen ein "Dummy-Transfer", da man ja nicht gesagt hat wohin die Datei gespeichert werden soll...
  Mit Zitat antworten Zitat
F0rc3

Registriert seit: 24. Mai 2006
Ort: /home/force/
29 Beiträge
 
#16

Re: TICQClient - Filetransfer

  Alt 13. Jun 2007, 20:16
*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*
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz