`
samwong
  • 浏览: 281767 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

QQ2013的PC版协议,0825包和0826的数据分析

 
阅读更多
最近写个QQPC协议返回当前QQ各种状态的东东。网上很多地方说的都有点不太明白,而且最新协议的也很少,基本都是以前的。苦逼之下借鉴各种资料,熬了几天。终于写出来了。因为只返回各种状态,,所以偶分析到0826这个数据包。后面的也就没分析了。虽然东西不多。。也希望能帮到对这方面有星期的朋友吧。。下面是分析的内容。。 腾讯的数据包都是用的tea加密算法。我们要先解密。。。才能看到真正的内容

搞忘记了。 用到的工具。。

抓包工具自行选择吧。。


[2013/1/13 22:49:38:144](发送的数据包)

02 //包头腾讯所有发送的数据包都是以这个开头

2F 35 //版本号QQ版本不同。这个东西也会变

08 25 // 命令首次跟服务器接触发送滴。。

4B B1 //序号这个东东是随机的 。。。随机生成这个就可以了。

39 80 8C 2C // QQ号的HEX 转换过来就是 964725804

03 00 00 00 01 01 01 00 00 65 A6 00 00 00 00 //这个是固定的。。具体啥么东西,不清楚

3E 59 4A DF 55 04 B1 AD 22 33 9F B3 E1 C3 CC D7 //这个是随机的tea key软件里随机生成就可以

-------------------------------------------------------------------------------以下就是经过 tea key加密后的数据了

39 16 78 35 92 0F 3D 37 95 4C 7C C8 8E 26 5C E6
D4 D9 47 C0 EE 30 08 94 BE 08 AC 8C 14 C8 CD 1A
90 CF 7F 01 AE 8D 55 75 51 56 D9 A7 92 6B A0 C6
79 00 BF 99 47 06 8F 5C D9 2C 6B 97 C9 D4 AE 79
C1 31 1B AC A6 0E 5F 9C

----------------------------------------------------------------------------- 以下是经过tea key解密后的数据

00 18 00 16 00 01 //token1固定的6的长度 这些后续的发包里需要用到。所以要记下来,好方便后面组合

00 00 04 11 00 00 00 01 00 00 12 91 //token2固定的 12的长度

39 80 8C 2C //这个是QQ号

00 00 00 00 01 14 00 19 01 01 //固定的数据

00 15 //这个呢。下面数据大小 16进制的15 换成10进制就是21 下面刚刚好是21的长度

03 2A 37 9C 8E 0B 74 A2 F1 E5 47 56 0B 02 CE 2C D0 0A 83 9E D2 //这21的长度是随机的。随便生成

-----------------------------------------------------------------------------
03 //包尾腾讯所有发送的数据包都是以这个结尾


[2013/1/13 22:49:38:238](接收的数据)
02
2F 35
08 25
4B B1
39 80 8C 2C //前面的和上面的意思一样。这个是QQ的返回包

00 00 00 //用固定的 00 00 00隔开了

--------------------------------------------------------------------------------以下是加密数据,用发送的那个tea key解密

30 10 39 3F 8B 13 9F 79 36 24 8A 07 78 25 94 C7 2C 50
D1 2A 3D B1 54 5E 19 8C 93 EA 10 4E 5E 99 80 96
C0 D0 39 39 6C 14 D2 53 D9 35 C4 95 4A 3B 60 94
80 9C F8 B5 D9 8B DC 65 D6 3F C1 6C DA 10 4A A3
9A CC BA FB 98 44 6B B2 91 53 7F A8 94 A0 11 38
BB EA 8B 89 22 1B 51 94 87 1B 77 22 00 EE EB 43
EE E1 7B 9F 4F E0 F8 10 20 66 DC 97 E6 A5 EA D4
F4 DD 02 A5 3C CA
-------------------------------------解密出来的数据

FE // 服务器IP需要中转..。。。其实根据接收的数据包大小就可以知道。需要中转的话 接收的数据包是135的长度,不需要的话是111的长度

01 12 // 固定
00 38 //0038的token 38的10进制是56,下面56的长度后就可以是下一个命令了,这些数据在 0826包都需要

D8 62 09 42 21 5C FE 51 C6 E6 07 C6 0A 3A 2A 7F 7B 50 E0 86 A3 0F 7E 10 FB A4 04 E6 DA 6E 9B BF 19 CA 64 52 2E 27 FB B0 9C 68 A0 4F BA 6A EC 9B 24 F4 F3 14 BF A1 D8 5F

00 17 00 0E 00 01 //固定了

50 F2 C9 3F //这个是连接的时间 2013-01-13 22:48:31

7B B6 90 44 //偶的本机IP123.182.144.68

BD 0B 00 00 00 0C 00 16 00 02 00 00 00 00 00 09 00 00 00 00

70 5A 54 65 //中转的服务器IP 112.90.84.101这里把解密出来的IP地址直接放到socket的IP设置那里就可以了,

00 00 00 00 00 00
---------------------------------------------------------
03 //包尾


[2013/1/13 22:49:38:144](给中转过后的IP发送0825包)

02
2F 35
08 25
42 0A //这个应该是上面的序号+1才对不过不知道肿么回事,我这里刚刚出了一堆中转。呵呵

39 80 8C 2C //qq

03 00 00 00 01 01 01 00 00 65 A6 00 00 00 00 //以上的就不分析了啊。。根据上面的看就知道了

E6 F0 06 96 1A E0 CB C4 5C FA 20 1B 98 C4 84 EE //重新随机生成的tea key
----------------------------------------------------------------------------加密数据 用上面的key解密

56 F0 09 B9 F5 D6
79 7D 2B 8F 18 79 F6 54 75 8D 6C BA CD C4 BF E0
8E 14 00 0B 92 67 DF D6 20 F7 EE 77 EC 84 1C 18
0B 2F B7 34 67 83 4B 5E B9 70 F8 FC 51 63 04 52
9D 05 5C 21 58 14 AA E4 2F 4D 69 13 E2 1D ED 78
91 C4
---------------------------------------------------------------------------以下是解密数据

//是不是很熟,这个就是第一次发包的数据,其实下面的都是和第一次一样的。重发了一遍而已
//所以捏。。偶就不解释了。。


00 18 00 16 00 01
00 00 04 11 00 00 00 01 00 00 12 91
39 80 8C 2C
00 01 00 00 01 14 00 19 01 01
00 15
03 2A 37 9C 8E 0B 74 A2 F1 E5 47 56 0B 02 CE 2C D0 0A 83 9E D2
---------------------------------------------------------------------------
03 //包那个尾

[2013/1/13 22:49:38:191] 其实呢。这个包的大小是111的,也就是说不需要中转了哈。

02
2F 35
08 25
42 0A
39 80 8C 2C
00 00 00 //以上都是一成不变的东东。

-------------------------------------------------------------------加密那个数据

06 11
B7 37 D9 EA 80 DE CC FB 88 89 D8 A2 60 70 18 57
5C 85 CB 64 92 82 33 3C D8 A3 FA B7 AA B4 28 C1
DB 07 0B 41 3F 9B 3E CD E8 55 42 4A 33 50 34 99
2B 41 68 7A E4 36 D9 4B F5 DC 7F 07 5E 0A 84 90
7F 63 49 EA 26 BC 06 6C D9 81 99 70 FF 9F E3 85
CA 84 3F A2 CD 32 4D 48 E2 F0 C1 06 11 8E

-----------------------------------------------------------------------------解密那个数据

00 //接触成功了。

01 12 //还是这个,,固定那个固定

00 38 //56长度的token 后续要用的噢。。

0B B4 8E C1 91 63 37 83 EF 7D 01 C2 73 D0 84 42 C2 2A 95 4E 63 6A 0E 82 D4 CF 65 87 46 67 F3 20 AD D1 49 42 94 3F 31 17 27 91 0C 38 90 82 6E 81 D0 8F CB 8E 41 B6 C9 45

00 17 00 0E 00 01

50 F2 C9 3F //很明显的时间。。

7B B6 90 44 //偶的IP地址

BD 06 00 00//其实。接收的包。记住一些下面的包需要用的数据就可以了。没用的像这些随机数据直接不用记

-----------------------------------------------------------------------------
03 //包包的尾部

[2013/1/13 22:49:38:207] //发送的包0826了喔。。这个返回的是各种状态了

02
2F 35
08 26
2D F3
39 80 8C 2C
03 00 00 00 01 01 01 00 00 65 A6 00 00 00 00 //以上的东西。老样子。看第一个包的分析就知道了

2D 1A 48 4E 3C 62 52 CC 30 7B 66 B2 50 E2 1A 14 //0826 随机生成的tea key或者叫随便生成的

-----------------------------------------------------------------------加密数据咯

F5 CC 47 E7 C8 8D
91 6E 11 E8 D3 41 34 DE 00 F8 05 DA 71 AB A1 67
70 2F 11 00 08 22 FA 94 DE 63 B5 74 EC 83 70 21
0A 7A 9B 83 EA 6B EC 5E 96 39 A5 2C 31 D8 D1 DE
25 53 7B CB 89 E8 DE C6 94 EA DF C9 55 61 B9 EA
E6 DC 06 92 69 A1 71 FA EE 93 1B 05 D8 13 FF 8E
2F 81 34 13 6A D4 8B B4 86 FC 80 DE F5 F3 9B 93
8E 48 F9 59 17 F1 44 B9 A8 66 FB 38 6B BE F5 FE
5B F4 FF 9B 0F 18 8D 13 20 0F E7 74 50 C4 C9 3F
51 84 1B 54 E8 06 61 76 A7 34 7D 3E AD 2D 2D 9A
6D A0 9D C2 30 D3 90 E1 9C B5 00 16 89 75 87 3D
B0 8D 37 FA C5 2C 1C BD 79 38 0E 3A A0 E9 04 34
20 54 4B 5F A6 33 52 AC F4 40 92 25 FE 66 AC F0
3B D1 FE CC FB 4E CF 6E 0D 23 1B A1 A9 63 70 8B
23 4B 75 C7 55 A9 5D B8 E7 C1 D6 DC EA A5 32 1C
81 30 CE 79 29 3B 83 21 87 84 20 80 5F 40 19 DC
4E E0 31 54 BF F6 03 69 D8 36 69 E7 DF A3 66 C5
35 85 7F CD BA EC 64 6D F0 04 47 49 7C EE 2A 63
8D 43 AF B6 18 DA 07 47 D2 B5 4B 34 D8 2D 7D B0
B4 BC 2C B8 0B 67 87 40 76 F0 54 29 04 41 DD CC
71 B6 01 40 70 1B E1 0B D7 4D 87 B1 73 4A 5B 49
EE 87 14 93 EE 76 17 E2 94 19 84 BA F0 5F 0E 82
89 69 E3 4B 9F 0E 7F F0 1D 18 94 EB AF EA BB 01
2B D6 D0 7D 63 32 E5 5B D7 F5 61 F7 7D 94 EE 74
31 87 F0 A9 61 8C 04 5B FB D9 E9 F3 B7 7E A2 69
80 A1 BB E6 72 83 01 63 92 9C BB 03 B6 C6 17 86
E9 1C 47 B1 98 C0 F4 5F E5 96 53 FC A8 E4 65 3C
A9 E1 2F 7B DC 62 BB 4A AF 39 71 9F E1 8D BE DD
E2 E5 99 06 08 53 87 72 1B 4C 84 5D 1C C2 56 81
E7 0B
-------------------------------------------------------------------------以下是解密数据真多啊

01 12
00 38
0B B4 8E C1 91 63 37 83 EF 7D 01 C2 73 D0 84 42 C2 2A 95 4E 63 6A 0E 82 D4 CF 65 87 46 67 F3 20 AD D1 49 42 94 3F 31 17 27 91 0C 38 90 82 6E 81 D0 8F CB 8E 41 B6 C9 45
//////////上面的数据眼熟么,中转过后,0825包接收到的,这个包就当头给发出去了貌似就是令牌的意思吧

00 05 00 06 00 02 //固定这么几个字节。。。数据也是固定的

39 80 8C 2C //然后QQ号

00 06

00 78 // 78 是16进制的,,10进制是120.。。也就是说。下面有120长度的数据时一个分水岭。噶
//。。这个也是加密的。解密的方式是QQ密码的一次MD5+00 00 00 00 +QQ号的hex


6E 44 7B 20 42 41 CE 47 9C 6C 25 F5 BD 06 48 54 47 7A 20 F9 19 8B CA AC 77 AD 6E 00 11 72 1D 67 08 CC CF BD 64 1D 68 DC 86 A6 DC 17 69 38 C6 90 5C 6D D9 A8 80 C7 D4 A3 16 B4 9A B2 5E B8 8C 0E 18 66 A6 C3 7A D8 80 86 97 67 64 87 FB FA FE 60 65 F0 E5 47 18 11 44 05 1D 7E B5 50 74 97 6B A7 7D 85 26 08 25 A4 43 1B 88 C8 39 A7 92 85 48 26 52 2A 1B 15 C8 33 F3 D0
------------------------------------------------------------------------------00 78的解密数据

4E 8B B4 0A //刚刚开始时4的长度,,随机的。。

00 01 //固定的

39 80 8C 2C //qq号

00 //固定

00 04 11 00 00 00 01 00 00 12 91 //眼熟么 0825里的

00 00 00 // 00的固定噢。

0A DC AF 06 5B F8 C6 99 4D 9C 42 16 27 12 D2 56 //这个是密码的一次MD5。。密码是yansh83082 反正QQ是
//冻结的 嘿嘿


50 F2 C9 3F //时间来了。。。

00 00 00 00 00 00 00 00 00 00 00 00 00 //固定长度的数据

7B B6 90 44 //偶的IP地址

00 00 00 00 00 00 00 //固定的

0C //这位会变。。不过固定貌似也没事。。怪了

00 10 // 16的长度

49 85 A1 B8 21 04 DA 46 9E 3F 17 C4 99 6E 4F DB //这个是固定的

D0 D4 42 1A 34 8E A9 9B BD C2 CF B8 B8 E1 B3 5A //这个是随机的。。用随机的这个解密下面 00 40的数据
------------------------------------------------------------------------------以上就是 0078的解密数据了

00 18 00 16 00 01 00 // 0825数据包里面的

00 04 11 00 00 00 01 00 00 12 91 //0825数据包里面的 token1 和token2 。。又拿过来了

39 80 8C 2C //QQ号

00 00 00 00 01 03 00 14 00 01 //固定的长度和数据

00 10 //0x10的10进制是1616的长度一般16的长度都是key

ED A1 D3 F6 EC 73 DE 8F 1F 5C 4B 3C 2C CB 3B 3F //不过这个数据是固定的。。。

01 14 00 19 01 01 00 15 03 2A 37 9C 8E 0B 74 A2 F1 E5 47 56 0B 02 CE 2C D0 0A 83 9E D2 //还是0825里面的

01 02 00 62 00 01 //这个也是固定的

BD 1E 9F A1 BE EE F7 83 9C 07 D0 C9 91 0D 4E D9 //随机16的长度。。。不知道是个啥么的key反正这里没用
00 38 //0826 返回的令牌了。。

00 26 12 A1 AB 5C 0D 20 26 43 91 28 8C DB AE 62 70 B7 BB 92 16 5F 33 1C E3 F4 C3 C8 13 12 A0 C2 AA FA 1E E5 AD F1 7F 38 91 E3 08 B9 F4 4C 5B 5A 8B 59 00 4A 5C 4A 45 75

00 14 //14的10进制是20,下面分出20个来

62 96 52 20 9A 2E D1 94 B9 6F 35 F0 AF 1C 46 3C 1B D5 4A 5B

00 1A //固定数据

00 40 //40的10进制 64下面是64个。。也是加密的。。。

0B 43 20 5C 6F 5D 29 A2 D3 84 6E F2 54 1B BE 12 68 52 A1 5B 6C BA 08 76 9F 23 CD 41 30 FC C8 F8 CB 76 2B 8B B2 5C A2 66 CD 23 30 89 BE 77 3A B5 00 2B 21 70 F3 00 4B 1F 59 42 C7 B1 C5 83 A2 35

---------------------------------------------------------------------------以下是解密部分,00 40的解密部分。。别理解错了

00 15 00 30 00 00 01 BE 1D AF 4F 00 10 0A 7B 3C 1F 90 D2 01 52 46 B5 A6 42 C7 E9 22 0D 02 EC F4 85 BC 00 10 AD 7D C0 21 74 66 7B 1D 30 6C 08 63 DC AC 9C 29 //整个解密出来的数据部分都是固定的。。。汗。不知道干嘛呢。
---------------------------------------------------------------------------
03 //包尾部了


因为偶只需要这点。所以也只分析了这点。。下面返回的数据是异常登录信息的。解不开。只有账号密码正确的情况下。。0826的返回包才能用0826的KEY解开。密码错误,需要验证码,冻结,异地登录等信息,都没办法用0826的key解开。。貌似是别的KEY了?

另外说下判断吧。。。
0826 返回包的长度=127 是账号异常 =175是密码错误 =740 是账号正常滴,密码也正常滴 =871就是异地登录了,,而下面这个返回包呢。就是871的长度

只要按照上面的解密步骤。。反过来进行加密。。那么最后把加密的数据发送出去。。就可以了。记得不是发送字符串啊。



[2013/1/13 22:49:38:269]
02 2F 35 08 26 2D F3 39 80 8C 2C 00 00 00 E1 82
9B 2F AA CC AF 23 D6 56 80 56 BF A9 5C BC 39 7B
22 86 C5 E8 7E 1E 17 09 83 E9 66 24 B8 38 37 F7
DB 71 A6 7D E2 4A 41 E8 7A 6E 63 4F 35 8F 2F 6B
EB 54 D4 8B 36 19 0F D5 BE 55 9A 8F E8 BE F3 D6
8A 32 70 E1 A8 48 2D F5 6C 5D 13 61 16 AE 70 36
81 0C 65 CF 2E 90 B9 07 5B DB 3D 0A 86 ED 72 1A
1D A1 F6 CD 3F 37 E8 5F A2 CD 19 72 32 EF E8 63
F8 4A 3A 2A 6D 7D 5F 90 3A D4 BA 8F E0 19 E4 81
5B 6F E3 F6 05 B5 22 95 B4 DB DA A8 0A D1 AE C6
E7 36 AB DA BB D9 D3 B1 55 84 BA 00 6E 24 AA FD
0E 87 24 4B F3 E4 69 FA C7 BF A0 E2 A6 75 39 26
CE BC 0D 50 3E 9C BC E3 F6 16 16 74 E4 95 6F E9
EF 55 9E FE 62 55 49 D9 B4 4B 4F 87 60 C7 1D 6C
F8 8D F1 BB 8B BF 79 EF 2C 08 DB 38 6F 21 6D D8
FE 8D 7E 9D 47 11 E2 5B 8B AB DB E1 00 FE 3C 8F
D3 04 F3 43 16 42 8F 25 E7 45 AF A9 5D 5F 76 7C
0B 8F 77 DB 42 D2 D0 F2 68 2F C1 0E 09 42 18 3A
54 A6 FC 6A 64 2F 71 91 9F E7 42 43 DB 81 32 BC
B3 2D 4B 0F D2 5F 4D AE 18 08 3E 6C BD C2 45 1F
11 C0 82 8D 3D 1F BE A0 27 F6 D3 52 CF 17 74 64
93 04 4E 6A E1 AE D7 34 76 A0 DE 0B 63 7F C0 C9
F0 A6 78 40 9A 3E 80 A7 6F E6 B0 BE 27 26 40 11
8C 06 FC 6A E7 A2 ED A6 C9 AD 99 DB 1F 3C D0 86
15 B8 05 83 A7 85 DE 8F 73 7B 00 49 DA EB 64 FB
07 55 64 E1 25 A9 C4 12 9C 11 27 B4 66 62 0D 4D
76 92 CD 57 65 8E 72 10 73 4E F9 43 50 00 F4 A1
BA 9D F7 7F E8 81 7B D5 AD ED CB D8 63 5C 03 AF
15 16 B3 A3 A4 23 AD FF 6B 56 6A 35 87 10 8B 94
17 25 0D BE 09 F3 42 07 96 1E 13 19 7B C7 C0 B5
88 C5 D8 77 33 E7 0B 47 D8 DD 7D C9 B4 74 21 D7
6E 65 BF 8E 2D 7A 70 C6 34 BC 11 06 30 72 82 D7
F4 54 7B 67 32 33 A1 06 16 91 17 18 72 95 08 BF
54 E0 F7 C7 EF B0 98 5D F0 A2 7C 85 60 81 06 EC
07 1C A9 78 9F 96 31 F6 97 B3 A6 C0 3D 3F 26 EE
CF A2 98 F3 D9 0F 64 C1 30 6D 1D 39 E6 FC 51 63
26 33 D1 BC 2B 95 CF E4 10 20 92 B6 94 E2 89 E8
31 0B B6 EF 6B 55 10 35 A1 80 0C CE B7 0B B8 66
96 DB 8E 71 ED C7 73 CF BA 51 26 71 17 47 5A 4A
92 07 BB E5 E2 12 69 33 10 E8 5B 3F 57 03 4D 1D
B0 7B 7B 61 02 56 A1 BF F0 A4 0F 0C ED 88 CE A4
F8 71 82 6F 48 3A 0F 72 48 17 75 DF 34 0F 79 98
12 FA F9 26 11 E9 B5 4D 42 0E 4C 91 68 16 BD 6F
7A 59 8C 07 1D 0F C3 A1 30 B4 62 14 DD 7F 1F 2A
9F 87 58 2E 74 47 D4 3D 59 95 43 71 33 2E 05 29
40 C3 06 3B 70 61 E0 FA 19 C2 99 5B 7F 9D E4 E4
3F 48 2E BC 48 6E CB 44 B5 59 73 B5 B4 70 1B 23
7A 34 C4 6B F3 B9 08 B3 FB B5 0F BE 17 B6 A3 6A
AA 76 6A 87 04 B9 45 91 55 FD 50 40 E1 89 F7 63
5B 57 2C 1C 37 B5 D0 4C BC 4D 1E 01 05 18 2A BB
CD 9F B2 50 3E 6F 5E AA 55 49 89 8E 17 07 99 D7
E5 6A 05 34 5E 79 EC 02 CA 66 A1 70 52 CF EA FB
A6 44 9C BA 9C D5 09 77 83 E5 02 F4 2E 59 6F 96
D2 15 35 04 BF 2E 27 5B 02 90 42 A3 45 D3 B3 99
84 15 A6 AA 46 8F 03
分享到:
评论

相关推荐

    QQAnalyzer 3.1 免费版专业抓去QQ协议包

    QQAnalyzer是一款用于辅助分析QQ协议的软件,集成了抓包功能,能抓取并自动识别QQ数据包,扔掉无用的数据包。软件提供友好的操作界面和丰富的右键操作菜单,对抓取的QQ数据包进行分析 只需指指点点即可完成。...

    RouterOS2.9.6.with.crack及配置动画

     系统提供强大的防护功能,支持内/外部攻击防范,提供扫描类、DoS类、可疑包和含有IP选项的包等攻击保护,能侦测及阻挡IP欺骗、源路由攻击、DoS等网络攻击,能有效的阻止端口扫描、防SYN flood , UDP flood , ICMP ...

    fckeditor扩展上传文件、源码高亮,插入Flash、媒体及视频及集成轻开平台

    轻开平台同时支持使用多个数据源和不同厂商提供的数据库服务器,只要支持JDBC访问及基于SQL规范的数据库(如:MySQL、SQLServer、Oracle、DB2、Teradata、SyBase等关系型数据库及基于SQL的大数据分析系统Vertica)。...

    欣向巡路ARP免疫墙 v1.4.0.99 免费版

    1. 恶意攻击识别:对数据进行精确分析,将“网络攻击”进行拦截,并举报其违规行为,目前支持IP地址欺骗和所有的ARP欺骗,以及洪水包攻击。 2. ARP看守式绑定:彻底根除ARP病毒影响,即使本机中毒(删除本机的...

    asp.net知识库

    Asp.net地址转义(分析)加强版 Web的桌面提醒(Popup) Using the Popup Object Click button only once in asp.net 2.0 Coalesys PanelBar + R.a.d Treeview +Xml 构建的Asp.net 菜单和权限管理模块 突破屏蔽限制...

    Delphi开发范例宝典目录

    实例263 利用数据控件录入和修改数据 339 实例264 利用SQL语句录入数据 340 实例265 制作简单的数据库操作软件 342 8.3 图片、多媒体数据录入技术 343 实例266 向Access数据库录入图片 344 实例267 从...

    Visual C++程序开发范例宝典(PDF扫描版).part3

     cc实例021 类QQ导航菜单   1.6 界面窗体应用实例   cc实例022 背景为渐变色的程序界面   cc实例023 椭圆形的程序界面   cc实例024 自绘窗体界面   cc实例025 类似WindowscXP的程序界面   cc实例...

    Visual C++程序开发范例宝典(PDF扫描版).part2

     cc实例021 类QQ导航菜单   1.6 界面窗体应用实例   cc实例022 背景为渐变色的程序界面   cc实例023 椭圆形的程序界面   cc实例024 自绘窗体界面   cc实例025 类似WindowscXP的程序界面   cc实例...

    网管教程 从入门到精通软件篇.txt

    INP:Oracle 3.0版或早期版本的表单源代码 INRS:INRS远程通信声频 INS:InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备 INT:中间代码,当一个源程序经过语法检查后...

    C#.net_经典编程例子400个

    236 实例160 播放Gif动画 237 实例161 利用Image制作小动画 239 5.4 媒体控制 240 实例162 检测是否安装声卡 240 实例163 打开和关闭CDROM 241 实例164 控制PC喇叭发声 242 5.5 ...

Global site tag (gtag.js) - Google Analytics