Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi ICQ-Protokoll änderung??? (https://www.delphipraxis.net/83056-icq-protokoll-aenderung.html)

NikoMitDaMacht 26. Dez 2006 16:27


ICQ-Protokoll änderung???
 
Hi!
Ich hab grad mal wieder versucht an meinen ICQ-Client ein bissl zu basteln.
Leider bekomm ich jetzt beim Login die Meldung "Error: Received malformed login packet" !
Haben die ICQ leute ihr protokoll geändert oder liegts nur an meiner firewall???

Weiß jemand was darüber?

[edit]Ich benutze den "ICQClient" von corbans.net[/edit]

Balu der Bär 26. Dez 2006 16:29

Re: ICQ-Protokoll änderung???
 
Bist du sicher das du nicht zweimal eingeloggt bist unter einer Nummer?

Die letzte Änderung liegt bereits Monate zurück.

NikoMitDaMacht 26. Dez 2006 16:31

Re: ICQ-Protokoll änderung???
 
ok... das könnte sein ... mein "echtes" icq sagt aber er würde mich kicken.

NikoMitDaMacht 26. Dez 2006 16:32

Re: ICQ-Protokoll änderung???
 
also wenn ich "Verbindung trennen" klicke gehts auch nicht

NikoMitDaMacht 26. Dez 2006 16:37

Re: ICQ-Protokoll änderung???
 
Liste der Anhänge anzeigen (Anzahl: 2)
Wenn ich mit meiner anderen nummer rein will gehts auch nicht.

Ich benutze das als test:

Balu der Bär 26. Dez 2006 16:40

Re: ICQ-Protokoll änderung???
 
Du kannst deine Beiträge auch Editieren um neuen Inhalt zuzufügen.

Stimmt, daran lag es nicht. Die Fehlermeldung heißt ja irgendwas mit "Empfange missgebildete Login-Informationen" oder so ähnlich. Da aber weder Trillian noch Miranda ein Update brauchten gab es imho keine Änderung am Protokoll.

NikoMitDaMacht 26. Dez 2006 16:44

Re: ICQ-Protokoll änderung???
 
Zitat Wiki:

"Eine weitere Problematik ist, dass über den offiziellen Server in zufälligen Abständen Versionsnummern von älteren Clients gebannt werden. Dies betrifft aber auch alternative Clients, da diese sich als eine bestimmte Version des originalen ICQ-Clients ausgeben müssen. In besonderer Härte wurde dies am 11. Juli 2006 durchgeführt, worauf ein Großteil alternativer Clients sich nicht mehr verbinden konnten. Durch minimale Änderung durch die Programmierer (der Aktualisierung der übertragenen Clientinformationen), können solche Probleme aber in kürzester Zeit behoben werden."

Das kommt hin ! Ich hab nichts mehr nach 20 juni gemacht da ich kein dsl mehr hatte!

[edit]SOrry wegen den vielen Posts[/edit]

Balu der Bär 26. Dez 2006 16:45

Re: ICQ-Protokoll änderung???
 
In meinem ersten Posting schrieb ich doch die letzte Änderung liegt Monate zurück. :zwinker:

NikoMitDaMacht 26. Dez 2006 17:00

Re: ICQ-Protokoll änderung???
 
ja das stimmt...
weiß jemand zufällig wo die versions nummer bei der kompo (siehe oben) übertragen wird?

phXql 26. Dez 2006 17:12

Re: ICQ-Protokoll änderung???
 
Zitat:

Zitat von NikoMitDaMacht
ja das stimmt...
weiß jemand zufällig wo die versions nummer bei der kompo (siehe oben) übertragen wird?

8 müsste das sein.

NikoMitDaMacht 26. Dez 2006 17:30

Re: ICQ-Protokoll änderung???
 
Zitat:

8 müsste das sein.
ich hab das gefunden : ICQ_PROTOCOL_VER = $0008;
das ist aber schon 8!
liegts vll doch nicht daran?

Ratte 26. Dez 2006 17:37

Re: ICQ-Protokoll änderung???
 
Die kompo ist 2 Jahre alt. Kann gut sein dass da was nicht mehr stimmt, zumindest bei mir war es auch unmöglich damit nachrichten zu empfangen.

phXql 26. Dez 2006 19:09

Re: ICQ-Protokoll änderung???
 
Zitat:

Zitat von NikoMitDaMacht
Zitat:

8 müsste das sein.
ich hab das gefunden : ICQ_PROTOCOL_VER = $0008;
das ist aber schon 8!
liegts vll doch nicht daran?

Was heisst schon? Die aktuelle Version ist 9. Wenn du das auf 9 setzt, wirds dir aber nich helfen. Mein Miranda weist sich auch mit Version 8 aus, funktioniert aber trotzdem...

Neutral General 3. Jun 2007 17:14

Re: ICQ-Protokoll änderung???
 
Hi,

Hier sind die Bugs aufgelistet und dort stehn auch die Lösungen:

Malformed login packet:

Zitat:

Find this line in ICQClient.pas:

Delphi-Quellcode:
//SRV_COOKIE
      FUIN := GetTLVStr(@pkt, T);               //Client's UIN in ASCII format
Replace with:

Delphi-Quellcode:
T := GetInt(@pkt, 2);
      if T = $008e then                // TLV(142 [0x008E])
      begin
        Inc(pkt.Len, GetInt(@pkt, 2));
        FUIN := GetTLVStr(@pkt, T);
      end else
      if T = $0001 then                // TLV(1 [0x0001])
        FUIN := GetWStr(@pkt);

Und hier gibts noch die Lösung dafür das man keine Nachrichten empfangen kann.

Gruß
Neutral General


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz