Xiaoxia[PG] Yesterday is history, tomorrow is mistery, today is a gift!

8五/11257

MyQQ3.30发布

声明
MyQQ is a cross-platform library for communication which uses a TencentQQ-like protocol to communicate with friends on the Internet. It can work well now and maintained by Xiaoxia.

Current Version: 3.30
Protocol Verison: 2011 Beta2

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!WARNING!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
myqq3是个实验品,仅供研究和探讨,勿用于其他用途。它的不稳定性以及时效性可能会导致灾难性的后果!!!

Win32 & Win64 Package 下载
myqq3.30

Source Code:
See http://code.google.com/p/myqq3/

Update History:
Version 3.30(2011-04)
1. Update to qq2011beta2 Protocol.
2. See SVN Changes.

Version 3.21(2010-06)
1. 修正了一些东西。

Version 3.20(2009-10-27)
1. QQInternational Beta1 Protocol.
2. Random packet seqno.

Older Version
MyQQ3.19 http://xiaoxia.org/1222.html

喜欢这个文章吗?

考虑订阅我们的RSS Feed吧!

评论 (257) 引用 (1)
  1. 还是跟大家说一下吧。之前我用过这个软件一段时间。后来腾讯就把我的QQ给封了。永不解封,登陆时会提示联系工作人员的。我也打过电话给TX。也不给解封。极度郁闷,这个软件是挺好用,也好玩,可是TX变态,会封号。TMDTX!

  2. 想当年,用MyQQ3.0 把一个新的QQ挂到了两个太阳。谁知道某一天用不到了。
    后来用QQ客户端登陆,一看,挂了。号码被GANG掉了。挺怀念这段时光的。

  3. 是2010协议的吗?和libqq比起来怎么样?

  4. 我想问一下怎么由session key得到登陆网站用的clientkey

  5. 希望能解决win下控制台发布群信息的BUG。 (只能e 群内部ID)

  6. 太好了。小虾出新版的啦!

  7. 围观下吧 不敢用…

  8. 我想说… 太多毛病了

    ADD无效

    昨天测试

    今天封号了

  9. 如果大虾一直做下去,就不怕协议过期咯咯咯。。。

    另外。。。如果协议不完善要注明是testing版,别当release稀里糊涂放出来导致咱们都不好看。。。

  10. 打从心里佩服你,看好你。 我要是有你这么厉害就好了,能独自完成QQ协议分析,写出第三方客户端。

  11. 大牛,前来膜拜……

  12. 呵呵,醉醺醺的扭过

  13. 多谢指点,昨天看你的视频,听见说“终于把这个md5给破出来了”,敢问是真的吗?

    • md5是可以暴力破解的,需要时间比较长。
      你可以去找一些专门进行md5破解的网站,一般都会有一个庞大的字典库。

      • 用PHP写了一个MD5批量生成的工具~原理就是提供一密码字典(或者直接生成) 然后生成对应的MD5 ~不过穷举10位以内的组合都要运行好半天。

  14. 非常崇拜小虾 不知道能否交个朋友 有问题像你请教!

  15. 请问 myqq怎么向其他qq发送表情 和 传送图片,代码中如何修改.

  16. 能否说下你的联系方式,方便的话发到我的邮箱 2241099466@qq.com, 有点问题 想咨询下你. 非常感激

  17. 这个真的会封号?

  18. 请教个问题,你们那儿用锐捷不,Linux下怎么解决锐捷的问题?我们这几个人尝试了多种方法都没成功!可以的话给点你们的方法或者解决思路!

  19. 你好,请问下你是用什么编译的。。似乎我有dev c++ 编译错误很多!

  20. 小虾,能不能把你的源码发下给我。我看了上面myqq3的源码,似乎跟myqq3.19是一样的。
    不知道你改了哪里。。或是有点东西没有在里面。。我想是否可以把完全的源码发下给我呢!
    邮箱:lin_guo_hua@163.com
    QQ:411216438
    万分感谢!因为比较感兴趣,所以想研究下@

  21. 今天花了一天的时间封装它!想做个UI~~~~~~要是能提供一个专门的lib就好了!也方便我们大家二次开发!!!!

  22. 你好,小虾。我也是一个学生,可以请教你一个问题么?我在互联网上一直没有找到答案,老师也说不知道如何实现……
    就是类似于3q大战时360推出的web qq端用dev c++如何实现啊,不要太多功能。仅需要出现网页就好》希望你能帮助我。谢谢。
    另外,可以和你交个朋友么,你的myqq3.17我还一直收藏,在noip集训的时候我们就是用它来聊天的(学校机子太破,而且这个也不太容易发现,可以混在我们的题目中,嘿嘿)

    • Tx的产品就是一堆IE Core的组合,没有多少技术含量,你也可以用一个IE控件来拼凑一个webqq程序。

  23. 有密保的号,好像不能用。

  24. 能不能写一个基于腾讯TM协议的?QQ协议老更新,然后就不能用了,TM稳定些,TM2009到现在没更新,一直能用。

  25. 配置文件qqconfig.txt里的QQHttpProxyServerList是用来设置HTTP代理的吧,但是设了还是提示Failed to send the packet. command: 91
    网络错误.

  26. 小虾···想请教一个问题,给个即时通讯么?

  27. 请问下次可以考虑用VS2010,或2005编写吗?用DEV-C修改编写太慢了,还乱码,每个Code 文件还要重新编码,麻烦。谢谢!

    • 请用codelite!
      不好意思,现在用ubuntu系统

      • 我用C::B,我表示我能用!!

      • new workspace,new project,add all files that in scr folder to the codelite scr folder,how to do then,please?

        • 然后我编译 得到这个:
          ———-Build Started——–
          ———-Building project:[ myqq - Debug ]———-
          /home/sandsea/Desktop/Q/trunk/src/debug.c
          63:3: warning: format not a string literal and no format arguments
          86:3: warning: format not a string literal and no format arguments
          /home/sandsea/Desktop/Q/trunk/src/myqq.c
          159:2: warning: format not a string literal and no format arguments
          218:2: warning: format not a string literal and no format arguments
          /home/sandsea/Desktop/Q/trunk/src/webqq.c
          79:58: error: macro “DBG” passed 4 arguments, but takes just 1
          78:5: error: ‘DBG’ undeclared (first use in this function)
          78:5: note: each undeclared identifier is reported only once for each function it appears in
          ———-Build Ended———-

  28. 请问一下,为什么在windows下用dev-c重新编译一下,连接的时候就出现网络错误?

  29. 3.30版本。我和3.19的对比了一下,没有区别?
    配置文件用的是可以登录的配置文件。

    • IP地址失效了吧。删掉登录服务器里的IP地址,使用域名地址登录,应该能够解决这个网络出错的问题。

  30. 小虾你好,我是coco软件开发组的负责人,李金龙。很希望可以认识你并成为朋友。

  31. 美国vps登陆为何显示网络错误

  32. 求完整命令行说明:)

  33. 你好,qqclient结构中的auto_accept有用吗?为什么我设置为1还是不能被允许自动加为好友呢?是不是这个功能还有其他地方需要设置?

  34. 网络错误啊?不能用了?

    • prot_login_touch_reply(113): redirecting to 119.147.45.192
      qqconn_connect(192): connecting to 119.147.45.192:8000
      prot_login_request_reply(211): process verify password
      prot_login_get_info_reply(370): Hello, 失败者
      packetmgr_check_packet(376): [2506515223] resend packet cmd: 30
      prot_login_send_info_reply(527): login result = 44
      网络错误.
      qqclient_detach(199): process = 4
      qqclient_logout(216): joining keepalive
      qqclient_keepalive(151): end.

  35. 3.19的版本.. 为什么编译会有
    til.o crc32.o qqconn.o -lpthread -s -o ../myqq
    utf8.o: In function `utf8_to_gb’:
    utf8.c:(.text+0×50): undefined reference to `libiconv_open’
    utf8.c:(.text+0×80): undefined reference to `libiconv’
    utf8.c:(.text+0xb3): undefined reference to `libiconv_close’
    utf8.o: In function `gb_to_utf8′:
    utf8.c:(.text+0x10d): undefined reference to `libiconv_open’
    utf8.c:(.text+0x13d): undefined reference to `libiconv’
    utf8.c:(.text+0×170): undefined reference to `libiconv_close’
    collect2: ld returned 1 exit status
    make: *** [../myqq] Error 1

    这样的错误呢..

    我确定 libiconv 已经安装了

  36. 我正要做一个黑莓的QQ客户端,打算专注聊天,其他什么都不要。。是不是手机QQ协议稳定一些呢?TM的协议怎么没见过呢?请小虾指点迷津啊

  37. gcc qqsocket.o qqcrypt.o md5.o debug.o qqclient.o memory.o config.o packetmgr.o qqpacket.o prot_login.o protocol.o prot_misc.o prot_im.o prot_user.o list.o buddy.o group.o qun.o prot_group.o prot_qun.o prot_buddy.o loop.o utf8.o myqq.o util.o crc32.o qqconn.o -lpthread -s -o ../myqq
    done.
    make: Leaving directory `/root/qq/src’
    这是什么意思?

  38. 我从svn上下载了代码,在windows下编译能成功,但是登陆的时候会出现网络错误,请指教一下吧!谢谢

  39. 已经解决那个问题了 是int溢出的问题
    顺便问一下这个版本能添加好友吗?我添加好友不成功

  40. 我想在你的3.30(反正就是svn上的那个)的基础上进行二次开发,既然你使用GPL协议,那应该没啥问题吧,不过还是来给你打个招呼
    当然我的作品也会开源,而且会注明使用了你的技术

  41. linux编译后,在提示激活的消息后会进入死循环提示“bad descriptor”。而且有的用户名会出现乱码并提示libconv不可用。
    如果有时间我会修复LINUX下的这些bug,但不知道怎么提交源码到google code……

  42. 一点也不会编程 只会在网上找答案照着做
    最开始我是在这里找到http://www.right.com.cn/forum/viewthread.php?tid=50409并使用 后来知道有你的原版
    所以尝试玩玩编译 什么都不懂只能网上找答案 http://blog.cn00.net/post/vps-gua-qq.html
    http://xiaoxia.org/upfiles/2011/05/myqq3.30.zip 和 google code 的 starkwong r24都会网络错误
    后来我使用r13 Version information.Apr 24, 2011 gdxxhg 就可以了,就是登陆时常常要激活, T X 可能检测出协议不正常(我都不懂这些)
    另外myqq能否增加一个断网重连后自动再连接,垃圾电信adsl拨号用户会48小时断网一次.虽然路由会自动重拨,但ip变了没用.
    我是路由tomatoduanwan的,挂载FTP,开启mldonkey和使用wget.比现在xp下高效省电实用.

    • 你好,myqq因为用的是不完整的pc客户端协议,所以不稳定性很大。如果有兴趣,可以组织一些人开发一个webqq协议的版本,可能会稳定很多。

  43. 另外blog能否增加修改功能 有时打错了点东西。。

    • 这个目前估计不行吧,因为访客没有帐号,要是能够修改,把别人的评论都给修改了咋办呢!

  44. 您好,看了您的工作成果非常感动,我想把这QQ移植到windows mobile 6.5
    使用.net compact framework 3.5,请问有可能吗?对于非托管代码没什么概念啊。望指点迷津,谢谢啦!

  45. 6位QQ登陆 程序自动关闭 以前的版本也这样

  46. 登陆日志 如下:
    16:20:43 [qqsocket.c]qqsocket_init(48): WSA Startup.
    16:20:58 [qqclient.c]qqclient_login(177): login
    16:20:58 [qqsocket.c]netaddr_set(154): Get IP: 121.14.80.220
    16:20:58 [qqconn.c]qqconn_connect(192): connecting to 121.14.80.220:8000
    16:20:58 [qqclient.c]qqclient_keepalive_proc(162): keepalive
    16:20:59 [prot_login.c]prot_login_touch_reply(115): redirecting to 119.147.45.253
    16:20:59 [qqconn.c]qqconn_connect(192): connecting to 119.147.45.253:8000
    16:20:59 [prot_login.c]prot_login_request_reply(173): result = 0×3
    16:20:59 [prot_login.c]prot_login_request_reply(214): process verify password
    16:20:59 [qqpacket.c]get_data(125): packet p->pos(50)+36760 > p->len(103)

  47. 为什么不提供一个简单的GUI呢,命令行很不习惯啊,XIA哥

  48. 看了这上面的qq2010登录协议, http://www.xueit.com/webdeveloper/show-9319-1.aspx
    一共分为6步, 而myqq中好像只有5步, 缺少了发送0x00E3命令的发送包。 不知道为什么。
    而Myqq登录后经常会出现这样的错误。
    11:12:41 [prot_im.c]process_sys_im(289): sysim(type:1): 您所在的网络可能存在危害其他QQ用户的行为,您的号码被迫下线。您重新登录时可能会被要求输入验证码,建议您换一个安全的环境上网。
    不知道和少发这个命令有没有关系?

  49. 小虾牛人 膜拜交流 会E语言吗?

  50. Failed to send the packet. command: 91
    请问下 出现这个错误 为什么 最近哪个版都试验了

    • 你好!出现这个问题很大可能是网络问题引起的。可能是因为你所在的网络无法连接到配置文件里指定的服务器地址,你可以尝试更换一个登录地址。

  51. 19:06:54 [qqclient.c]qqclient_detach(224): process = 4
    19:06:54 [qqclient.c]qqclient_logout(241): joining keepalive
    19:06:54 [qqclient.c]qqclient_keepalive_proc(170): end.
    19:06:54 [packetmgr.c]packetmgr_recv(313): end.
    19:06:54 [packetmgr.c]packetmgr_end(339): packetmgr_end
    23:40:32 [qqclient.c]qqclient_login(177): login
    23:40:32 [qqconn.c]qqconn_connect(192): connecting to 58.60.15.39:8000
    23:40:32 [qqclient.c]qqclient_keepalive_proc(162): keepalive
    23:40:38 [packetmgr.c]packetmgr_check_packet(379): [171868446] resend packet cmd: 91
    23:40:44 [packetmgr.c]packetmgr_check_packet(379): [171868446] resend packet cmd: 91
    23:40:50 [packetmgr.c]packetmgr_check_packet(379): [171868446] resend packet cmd: 91
    23:40:56 [packetmgr.c]packetmgr_check_packet(379): [171868446] resend packet cmd: 91
    23:41:02 [packetmgr.c]packetmgr_check_packet(363): [171868446] Failed to send the packet. command: 91

    23:41:03 [qqclient.c]qqclient_detach(224): process = 4
    23:41:03 [qqclient.c]qqclient_logout(241): joining keepalive
    23:41:03 [qqclient.c]qqclient_keepalive_proc(170): end.
    23:41:03 [packetmgr.c]packetmgr_recv(313): end.
    23:41:03 [packetmgr.c]packetmgr_end(339): packetmgr_end

    小侠好,我在google code 上下的代码 在LINUX 还有WINDOWS下 编译后都是会报上面的错误 反而 用你上面http://xiaoxia.org/upfiles/2011/05/myqq3.30.zip 下载的东西 里面的可执行文件WIN32中的myqq.exe就可以正常登录 当然编译后也是报网络错误 我看EXE是今年4月25日生成的 里面的代码都是09年的呢 请问有没有最新的代码 google上的代码 编译出来也是错误

  52. - -求你早期的QQ协议 破解文章 冒失是百度的空间?

  53. 不过自己编译的可执行文件在推出是老是非法操作,虾子能否看看是什么原因?

  54. 虾子,你水平这么高,不如参与libqq-pidgin项目(http://code.google.com/p/libqq-pidgin/)。这个项目是真正可以使用的,只是QQ目前还是问题多多,需要优化。这样子可以同时用QQ和gtalk了。而且还可以锻炼一下团队协作能力。现在libqq-pidgin项目的作者更新比较慢,或者你在libqq-pidgin项目的基础上另起一个项目,搞好一点,做团队的领导者。团队协作很重要,因为一个人再厉害,力量毕竟有限的,只有团结一批人,才能够实现你远大的目标。一点建议,不要介意,呵呵

    • libqq-pidgin跟myqq是差不多的,用的协议也是差不多的,遇到的有待解决的问题也是差不多的,继续维护和完善的难度很大。
      协议不完善不是一个人能解决的问题,如果大家都能贡献一份力量当然很好了。但是代码复杂了也不好维护。
      所以我在想一个好的方法来解决这一个问题,我在筹备myqq4,也希望有志者加入来参与一下讨论。

      • 算我一份,呵呵。我们应该先确定一下myqq4的目标,然后逐步实现就可以了。你现在考虑myqq4准备大概实现哪些功能?

        • ok~ 我加你到讨论组里去吧,你可以把你的想法通过邮件发送到 myqq.developers AT xiaoxia.org

  55. 小侠,请问我用smartsniff怎么监听QQ使用http proxy时所发送的IP包?

  56. 不说别的,看你回复的态度,真是佩服

  57. VF_REJECT = 0×02,
    VF_QUESTION = 0×03,

    请问 xiaoxia 这是什么意思

    • 验证方式吧,reject是直接被拒绝了,question是需要回答问题,你需要提交一个answer才能得到添加权限。

  58. 今天无聊又下了一份在vps在编译,登录提示网络错误。。 Failed to send the packet. command: 91

  59. Failed to send the packet. command: 58
    Failed to send the packet. command: 58
    Failed to send the packet. command: 58
    Failed to send the packet. command: 58
    Failed to send the packet. command: 58
    Failed to send the packet. command: 58

    时间长了就会出现这个 不能发送 QQ_CMD_KEEP_ALIVE = 0×0058
    为什么会出现这个问题呢 谢谢

    • 会不会是掉线了?尝试加快发送心跳包的频率会否有好转呢? 你使用的是哪一个版本?

  60. 如果有能给个联系方式吗?

  61. 在linux下编译时,出现如下错误,请问该如何解决,谢谢。
    (下载自http://xiaoxia.org/upfiles/2011/05/myqq3.30.zip )
    myqq.c:214:12: error: conflicting types for ‘getline’

  62. 来支持下 最近对QQ蛮感兴趣的

  63. 手机QQ协议,电脑端QQ没能力

  64. 经常遇到登录某一个号码,如果需要有验证码, 就会不停地获取验证码,直至失败。
    我下载了一个2011beta2的QQ客户端,抓了个BA发送包如下:
    [NO.3 2011-11-07 14:35:19 393 SEND]
    02 22 27 00 BA 21 AD 68 FB C2 9F 02 00 00 00 01
    01 01 00 00 64 EF 37 6B A5 66 08 E7 AA 30 61 F2
    86 E2 B0 14 30 EF 99 30 9F A9 6A 7B 91 23 6E 0F
    42 20 9C CC 21 01 2A C2 73 DE 85 DD 62 1F 8E D8
    80 91 49 1D D6 61 81 8F 7F 18 C5 99 64 12 2F 2B
    2B 07 40 42 BA 76 BB 0A C5 38 E8 22 6F 07 63 73
    6B 0E 31 C6 AE 06 15 E8 9C B8 0F 49 9B 51 FB 0B
    32 26 5C E5 FA 55 16 D5 08 CE 06 25 FE 57 09 58
    C7 95 38 C0 E5 CC 9C 16 AC A0 54 91 A5 27 D3 94
    D1 D3 4C A2 FA 05 11 96 D3 2D E5 BA DD DD 2C EE
    96 69 D3 25 A1 75 FD 24 5A 91 27 C4 18 CD 8F 37
    04 BC 66 13 CC 81 B8 7E 3B 4C 57 4D 1F EE DA 10
    BD 7C 75 AA 67 0C 03

    但在MYQQ中,同样的发送包长度却小于上面的包,抓包如下:
    02 22 27 00 ba 0a 01 99 35 a5 71 02 00 00 00 01 01 01 00 00 64 ef
    只填充了put_data( buf, unknown_packet_flags, 11 );这一句后面就没有了。
    但有的QQ也能成功获取验证码登录, 不知道为什么?

    • 不好意思, 抓包长度错了,长度应该是正确地, 但是还是存在不停获取验证码的情况。
      在prot_login_request_reply中, next = get_byte( buf );始终为1,直到错误退出。

      • 会不会是跟你的网络环境有关?你使用的是哪一套协议或者哪个版本的myqq?

        • SVN上的, 协议版本号是0X2227,2011beta2, 这两天分析了下腾讯2011beta2的包.
          修改了协议,prot_login_request函数
          if( code )
          put_byte( buf, 4 );
          else
          put_byte( buf, 0×13 );//这里原来为3

          并加上这么一段数据到BA包最后
          static uchar BA_data2[] = {0x4A, 0xB8, 0×34, 0xE3, 0×16, 0xE3,
          0xDA, 0xBF, 0xEF, 0x0B, 0xF6, 0×91, 0xF7, 0xD0, 0xF4, 0×42,
          0×23, 0x4E, 0x6A, 0×12, 0×52, 0xDD, 0x4D, 0xDF, 0×31, 0x4A,
          0×34, 0×49, 0xBE, 0×05, 0×33, 0x6C, 0×51, 0×89, 0×11, 0×90,
          0x6D, 0x4A, 0xBC, 0×30, 0xDE, 0xFF, 0×47, 0×31, 0xB3, 0xB2,
          0×95, 0x3D, 0xEB, 0×80, 0x0E, 0×11, 0xC6, 0×23, 0xD3, 0×22
          };
          put_word(buf, sizeof (BA_data2));
          put_data(buf, BA_data2, sizeof (BA_data2));
          现在能正常登陆,由于测试了N个QQ都没有出现需要验证码的情况,所有暂时还不知道需要验证码的时候对不对。

          • 哦,对了, 之前下载的2011beta2不能使用,腾讯要求升级才能使用。 升级以后,抓包后分析了一下,修改发送包static uchar unknown_packet_flags[] = {0×02,0×00,0×00,0×00,0×01,0×01,0×01,0×00,0×00,0×64,0xef};

          • qq协议的结构变化莫测,所以一个版本的协议也永不长久。如果你有google帐号,我可以加你到committer里,更新一下SVN上的代码。

  65. 侠,你好
    请问有没有办法可以使QQ客户端收到myqq发送的时候有表情呢?
    case 02: //face
    len_str = get_word( buf );
    buf->pos += len_str; //
    get_byte( buf ); //FF
    len_str = get_word( buf );
    if( len_str == 2 ){
    get_byte( buf );
    if( outlen-i > 15 )
    i += sprintf( &tmp[i], “[face:%d]“, get_byte( buf ) );
    如果把tmp 转发给一个正常的QQ 客户端 现在也只是FACE%D 这个是怎么转换的呢
    如果只发送一个 /吓 这两个东西给QQ正常客户端也只是上面的 /吓 并不会出现表情 不知道 这个怎么转换的,先谢谢了哈

    • 你好,SVN上的myqq没有实现支持tx的表情功能 :-)

      • 是的啊,所以我想把这个东西转换一下,如果那个微笑的表情是 face79 就是说有没有什么格式的数据发送给正常的QQ 把face79 对应一个转换变成别人能收到的 微笑呢

  66. 很感谢你的MyQQ。学校的电脑室不能安装QQ。我也讨厌官方的客户端和WebQQ,它占用太多资源。
    但是在英文的系统下显示不了任何中文,只看到一堆问号。不知是否有什么办法?(学校的电脑都是英文的Windows7 32bit)

  67. 好像 0xdd c->s发出去的用来解 0xdd s->c 的 randomkey 都是全0 哦 可能这样比较容易被腾讯认为是 非法的终端。另外请问下你们有没有什么交流群? 是否能让我加一个 嘿嘿

  68. 老大是不是在更新http://code.google.com/p/myqq3/,我现在更新发现只有几个文件,呵呵

    A myqq3-read-only\myqq4.project
    A myqq3-read-only\.hgignore
    A myqq3-read-only\source
    A myqq3-read-only\source\main.cpp
    A myqq3-read-only\myqq4.txt
    U myqq3-read-only
    而且里面基本上是空的。

  69. myqq3里面有点小bug
    line 575 DBG ((“got qun: %d”, number ));
    line 581 DBG ((“got buddy: %d”, number ));
    里面的“%d”应该改为“%u”,会对调试有点小影响。

    • 谢谢指出!!!这个应该是在初期版本就没有注意到的问题,后来基本换成%u,但是有的地方可能没有更新过来。

  70. Unknown message type : 2d

  71. 想实现跟好友发图片的功能, 也就是类似在聊天框中粘贴图片的功能, 是否容易实现呢?

    • 不容易,图片传输需要了解另外一套文件传输协议。

      • 小侠对图片传输有了解吗?或者之前有没有哪个开源的QQ代码实现了这个功能?大家可以一起研究一下。听说EVA QQ有这个功能,不知道是不是真的。

        • 以前用过eva的确可以传文件,但是现在不知道还行不行了。文件传输有点复杂,虽然我没实践过,但是也感觉不简单。因为是tx自己用udp实现的可靠传输协议。我还搞不明白,为何我在局域网用http下载文件有10MB/s,用它的UDP文件传输协议才6MB/s呢。

  72. xia,我是用java写的,想请教下,我发送的包是02 21 07 00 91 … 03的byte[]数组,但是服务器就是没反应,这会是怎么回事啊?

  73. 服务器地址是什么啊?我想的是UDP,sz的,端口8000,但是没用,然后我登了扣,在dos下看了IP,是TCP,我用的这个,能连上,获得session,但包发过去还是没反应;至于数据包,应该不会错,还是,顺序错了,反过来?03 … 91 00 07 21 02?

    • 我用cmd下获得的IP,执行结果:
      receiveMessage大小:166
      ClientDecoder处,receiveMessage:
      400 Bad Request

      400 Bad Request
      nginx

    • 可以抓包检查一下。
      普通的数据包,02是开始的标记,03是尾部标记。

      • 哦 ,那要用什么软件才能抓到啊?

        • Xiaoxia:
          我用QQAnalyzer抓包试了下,用扣扣登陆,抓到的包是UDP,8000端口,而在CMD下看到的IP是TCP,80端口,这是什么原因啊?
          我把代码里的地址换成TCP的地址,发送包,只抓到一个我发送的包,而换成UDP的地址,一个包都抓不到,这是什么原因啊?

        • wireshark? tcpdump? smartsniff?

          • 不知道方不方便,我想耽误你一点时间问你几个问题,因为也是刚开始玩这个,还几个忙点一直越不过去,呵呵,我也是学生的,我的扣扣:1329392274 ,如果不方便也没关系

  74. 这个机器人不能群聊,一直是失败是啥原因
    SVN 里面的也不能群聊

  75. 这个贴我看了很多遍了。
    这个贴提供的源码能编译,但登录的时候,却是[1151264686] resend packet cmd: 91错误。。我改用域名登录,不知道该改,改了几趟都是网络错误。
    而在SVN那里下载的,却是编译不了。。。。
    mingw32-make: Entering directory `D:/svn/branches/myqq3/src’
    gcc -c -Wall -O -Werror -I”../lib/pthread” -o qqsocket.o qqsocket.c
    gcc -c -Wall -O -Werror -I”../lib/pthread” -o qqcrypt.o qqcrypt.c
    gcc -c -Wall -O -Werror -I”../lib/pthread” -o md5.o md5.c
    gcc -c -Wall -O -Werror -I”../lib/pthread” -o debug.o debug.c
    gcc -c -Wall -O -Werror -I”../lib/pthread” -o qqclient.o qqclient.c
    In file included from qqclient.c:34:
    protocol.h:8: warning: malformed ‘#pragma pack(push[, id], )’ – ignored
    protocol.h:17: warning: #pragma pack (pop) encountered without matching #pragma
    pack (push, )
    mingw32-make: *** [qqclient.o] Error 1
    mingw32-make: Leaving directory `D:/svn/branches/myqq3/src’

    我是新手,刚刚学习,不知道该从那里入手,能发一个配置好的到我邮箱。

    • 你可以发你的网络部分的配置上来看看~

      • 我用默认的那个,会说网络错误

        # 登录方式
        # TCP or UDP or PROXY_HTTP
        QQNetwork = UDP
        # 禁止使用色彩。true表示禁止色彩文字
        NoColor = false

        配置:
        下面为QQ服务器列表,每个服务器用|来隔开,IP和端口用:来给开。
        电信服务器
        #QQTcpServerList = 219.133.60.173:80|219.133.38.232:80|219.133.40.177:80
        最多允许添加16个
        QQTcpServerList = 219.133.60.173:443|219.133.49.125:443|58.60.15.33:443
        QQUdpServerList = 219.133.49.171:8000|58.60.14.37:8000|219.133.60.36:8000|sz6.tencent.com:8000|sz7.tencent.com:8000|sz8.tencent.com:8000|sz9.tencent.com:8000

        HTTP代理服务器
        QQHttpProxyServerList = 148.233.239.24:80

        log记录
        13:09:04 [qqsocket.c]qqsocket_init(48): WSA Startup.
        13:09:49 [qqclient.c]qqclient_login(158): login
        13:09:49 [qqconn.c]qqconn_connect(192): connecting to 58.60.14.37:8000
        13:09:49 [qqclient.c]qqclient_keepalive(117): keepalive
        13:09:56 [packetmgr.c]packetmgr_check_packet(376): [1151264686] resend packet cmd: 91
        13:10:02 [qqclient.c]qqclient_detach(199): process = 4
        13:10:02 [qqclient.c]qqclient_logout(216): joining keepalive
        13:10:02 [packetmgr.c]packetmgr_recv(308): end.
        13:10:02 [qqclient.c]qqclient_keepalive(151): end.
        13:10:02 [packetmgr.c]packetmgr_end(334): packetmgr_end

      • 如果改成PROXY_HTTP登记录,我的配置如下:
        # 登录方式
        # TCP or UDP or PROXY_HTTP
        QQNetwork = PROXY_HTTP
        # 禁止使用色彩。true表示禁止色彩文字
        NoColor = false

        下面为QQ服务器列表,每个服务器用|来隔开,IP和端口用:来给开。
        电信服务器
        #QQTcpServerList = 219.133.60.173:80|219.133.38.232:80|219.133.40.177:80
        最多允许添加16个
        QQUdpServerList = sz6.tencent.com:8000|sz7.tencent.com:8000|sz8.tencent.com:8000|sz9.tencent.com:8000

        HTTP代理服务器
        QQHttpProxyServerList = sz6.tencent.com:8000

        LOG日志是这样的
        13:15:37 [qqsocket.c]qqsocket_init(48): WSA Startup.
        13:16:07 [qqclient.c]qqclient_login(158): login
        13:16:07 [qqsocket.c]netaddr_set(154): Get IP: 183.60.48.168
        13:16:07 [qqconn.c]qqconn_connect(192): connecting to 0.0.0.0:0
        13:16:07 [qqsocket.c]qqsocket_connect2(137): qqsocket connect failed.
        13:16:07 [qqconn.c]qqconn_connect(194): can’t not connect server 0.0.0.0
        13:16:07 [qqclient.c]qqclient_detach(199): process = 4
        13:16:07 [qqclient.c]qqclient_logout(216): joining keepalive
        13:16:08 [packetmgr.c]packetmgr_recv(308): end.
        13:16:08 [packetmgr.c]packetmgr_end(334): packetmgr_end

        • 代理不是这样设置的。
          不使用代理,使用UDP和域名地址登录吧。顺便ping一下那个域名看能不能通 :P

          • 用UPD登录,并把IP的地址去掉。但还是提示网络错误。
            而我看LOG日志,是曾经连接到的了。(小易是我QQ的昵称)
            好头晕啊。。。。

            16:38:25 [qqsocket.c]qqsocket_init(48): WSA Startup.
            16:38:50 [qqclient.c]qqclient_login(158): login
            16:38:50 [qqsocket.c]netaddr_set(154): Get IP: 112.90.86.202
            16:38:50 [qqconn.c]qqconn_connect(192): connecting to 112.90.86.202:8000
            16:38:50 [qqclient.c]qqclient_keepalive(117): keepalive
            16:38:51 [prot_login.c]prot_login_touch_reply(113): redirecting to 112.90.86.241
            16:38:51 [qqconn.c]qqconn_connect(192): connecting to 112.90.86.241:8000
            16:38:52 [prot_login.c]prot_login_request_reply(211): process verify password
            16:38:53 [prot_login.c]prot_login_get_info_reply(370): Hello, 小易
            16:38:53 [prot_login.c]prot_login_send_info_reply(527): login result = 44
            16:38:53 [qqclient.c]qqclient_detach(199): process = 4
            16:38:53 [qqclient.c]qqclient_logout(216): joining keepalive
            16:38:53 [packetmgr.c]packetmgr_recv(308): end.
            16:38:53 [qqclient.c]qqclient_keepalive(151): end.
            16:38:53 [packetmgr.c]packetmgr_end(334): packetmgr_end

  76. 但那个win32编译好的,登录和发送信息都没问题

  77. 现在是不是一用就异常? 我用MYQQ登录上去3秒钟就异常了。。。。

    • 用编译好的WIN32的MYQQ,收发信息也没什么问题。
      但编译原码的,登录也登录不了。

      • 这么神奇~~你看看这里的评论,看能不能找到解决方案,我记得之前有人提到这个问题,也给出了问题原因。

      • 你是不是下错了,网上有两个版本的MYQQ3.3 一个是完整版 一个是不完整版。。。。
        不过我这个编译了是能登录,不过有登录过程也有问题,随时出现错误,而且账号随时容易被冻结

  78. 我终于知道为什么用你的MYQQ登录之后会被封了,看了你的源代码之后知道你很多地方漏了RANDOM_KEY过程,直接使用16位0作为KEY,估计腾讯有专门的检查机制,相同的KEY用多了就需要激活,如果相同的KEY的出现达到一定次数,就会视为数据异常,将QQ号的登录转人工处理或者其他方式处理,估计一眼就能看出来使用第三方登录工具登录的

    • 你能不能发个编译后能登录的MYQQ给我呢?我现在还没做成。
      邮箱:amsoy@126.com,,,,谢谢啊~!

  79. 你好,我最近在使用qqdicebot4这个软件,他是基于你的myqq而做的机器人。但是这个机器人不能在2开头的9位数的qq群中回复,这是为什么?

  80. 手机版QQ使用TCP协议,与UDP协议有多少不同?
    myqq的各版本中,TCP协议均会报【网络错误】,只有UDP协议正常。
    TCP连接何时可用?
    谢!

    • 按理来说,这个UDP、TCP不受QQ协议的影响,只是连接方式不同。
      提示的“网络错误”,应该是TCP的服务器地址有问题了。如果是连接的服务器用了IP,可以试试改为域名。


Leave a comment

(required)