网络的阶梯第三话:
成也Winsock,败也Winsock(下)
有很多朋友,没有过写网络程序的经历。但听说用VB+Winsock控件可以很简单的进行网络编程。也有很多朋友,已经从Winsock控件那得到好处,心感欣喜。而我,也就是其中普普通通的一个了。对不起,你曾经给予我欢乐。对不起,惜日有你的日子我是多么的愉快。但现在,我却揭露了你的伤疤!
最近刚上演完《楚汉娇雄》。因为我对战国时期那些奇人异事太着迷,所以追个不停的看。韩信的那句:“成也萧何,败成萧何”,使我感触最深。因为Winsock也曾使我有过类似的经历。当然,我没有当上天下兵马大元帅,最后也没有被杀了。哈哈!毕竟事情都过了很久,现在想起也没多少话能写下来。仅仅因为一个缺点,使得Winsock这个控件形成的在我心里那完美的画像完全碎裂。具体是个怎样的缺点,我又一时间表达不出!只能从应用上去明示了。
大家可曾使用过网络蚂蚁这个下载软件?做人别忘本,这可是本土第一个支持多线程下载的软件呢。而在这软件上,有一个很多人都不会注意到的能力(其它也会有,只是举个例)。更加是用Winsock控件写网络程序的人完全不能理解的!因为Winsock不支持这个。我也很无耐,当我发现了的时候。好像被判死刑一样。已经找不到任何的理由再让我继续了。这也是Winsock控件给予我的致命伤。
喂,朋友~不要这么神神化化,舞文弄墨吧。大不了18年后又一条好汉。
嘿小子,算你看得透。我就是要骗字数,虽然没有稿费,我也照骗的!问你怕没...
没有啦,只不过想把感情升华一下嘛。哈哈~马上就说到骨了!别闹,好不?
大家搞个网络蚂蚁来,开了下个软件。在保存路径那里填上一个已存在的文件名。你可能以为蚂蚁会要你重命名吧?错~它不会。而是开始与服务器连接!连上了,确定文件名。现在才来问你是不是要改名。哇这也太BT了吧~什么时候不问这个时候才来问的!嗯,的确是!要是我不选,它就一直停在那里。这么牛!不牛么?对于你用SockAPI来做的当然不牛,但这个正是Winsock无法做到的。这是一个很重要的功能!哦?这关控件的事么?不是你程序的事?当然不是我程序的事了!做过与WEB服务器通信的都知道,只要收到服务器返回确认信息,也就是开始要接收文件的时候了。在这里,要是用Winsock控件,提交了请求后,就是一直连续的DataArrival事件,直到服务器完成任务,把所有你请求的数据都传达给你!而在网络蚂蚁那不是。它可以暂时停止你的传送。而在确定好文件名后,不需要再提交请求,就能继续。这,已经不是断点续传那的事了,不要拿这个来驳我!我也尝试过自己写一个服务器来让蚂蚁停。然而的确停下来了!这时SendComplete死活也不发生。当确定文件名后,事情水落石出……
对不起,Winsock你不适合我,我要找比你完美的。我就是这么一个人。虽然,你的名字,你的事件,你的属性,你的方法还不时在我脑海里飘荡盘旋。但你还是走吧,出去的时候记得把门关上...慢着,请问:你家里有其它兄弟姐妹吗???
qyii
2004年12月09日 夜已深