Thema: Delphi ICQ Client Problem

Einzelnen Beitrag anzeigen

Allstar

Registriert seit: 23. Sep 2009
3 Beiträge
 
#4

Re: ICQ Client Problem

  Alt 23. Sep 2009, 15:23
Zitat von hadschi92:
Ich denke dass du damit nach dem Land suchen kannst:

Delphi-Quellcode:
TICQClient.SearchWhitePages(const FirstName, LastName, NickName, Email: {$IFDEF VER200}RawByteString{$ELSE}string{$ENDIF}; MinAge, MaxAge: Word;
  Gender: Byte; const Language, City, Country, Company, Department, Position, Occupation,
  Organization, OrganKeyWords, PastAffiliation, AffiKeyWords, KeyWord: {$IFDEF VER200}RawByteString{$ELSE}string{$ENDIF}; Online: Boolean);
Als Antwort bekommst du dann eine OnUserFound-Benachrichtigung.
Also ich will ja nicht heruasfinden in welchem Land irgendein User lebt, sondern ich möchte User finden, die in einem bestimmten Land leben. Oder hab ich diese Funktion falsch verstanden?^^


Zitat von ghost007:
Hi,
ich bin jetzt zwar nicht mit der TICQLib vertraut, aber schau dir doch einfach mal den code der SearchByUIN und SearchByMail funktionen an, evtl siehst du was du modifizieren musst um eine SearchByCountry funktion zu schreiben.
Hmm da hätte ich irgendwie auch von selbst drauf kommen können. naja manchmal ist die Antwort so einfach dass man sie selbst nicht mitbekommt Aber ich bin mir nicht sicher wie ich das machen kann... Ich hoffe ihr könnt mir helfen:

Code von SearchbyMail, SearchbyName, SearchbyUIN:
Delphi-Quellcode:
{Searches user by Mail}
procedure TICQClient.SearchByMail(const Email: String);
var
  pkt: TRawPkt;
begin
  if not LoggedIn then Exit;
  CreateCLI_SEARCHBYMAIL(@pkt, FLUIN, Email, FSeq, FSeq2);
  FSock.SendData(pkt, pkt.Len);
end;

{Searches user by UIN}
procedure TICQClient.SearchByUIN(UIN: LongWord);
var
  pkt: TRawPkt;
begin
  if not LoggedIn then Exit;
  CreateCLI_SEARCHBYUIN(@pkt, FLUIN, UIN, FSeq, FSeq2);
  FSock.SendData(pkt, pkt.Len);
end;

{Searches user by Name and other data}
procedure TICQClient.SearchByName(const FirstName, LastName, NickName, Email: String);
var
  pkt: TRawPkt;
begin
  if not LoggedIn then Exit;
  CreateCLI_SEARCHBYNAME(@pkt, FLUIN, FirstName, LastName, NickName, Email, FSeq, FSeq2);
  FSock.SendData(pkt, pkt.Len);
end;
Eine SearchByCompany Procedure müsst dann so aussehen, oder?:

Delphi-Quellcode:
procedure TICQClient.SearchByCompany(const Company: String);
var
   pkt: TRawPkt;
begin
   if not LoggedIn then Exit;
   CreateCLI_SEARCHBYCOMPANY(@pkt, FLUIN, Company, FSeq, Fseq2);
   FSock.SendData(pkt, pkt.Len);
end;
So hab keeeeeeine Ahnung ob das stimmt Hab mir das gerade aus den Fingern gesogen Aber woher weiß ich denn wie ich das richtig abändern soll, was für Daten ICQ erwartet, wenn ich anfange mit ihm zu kommunizieren? Hoffe da kann mir jemand helfen
Danke für die bisherigen Antworten!
  Mit Zitat antworten Zitat