- 博客(26)
- 资源 (6)
- 收藏
- 关注
原创 “黑盒工坊”,轻松管理《魔兽世界》插件!
小黑盒旗下全新产品“黑盒工坊”现已上线啦!在黑盒工坊官网:https://workshop.xiaoheihe.cn/即可下载最新版本!黑盒工坊是一款免费的《魔兽世界》插件管理助手,能够帮助你轻松管理游戏插件,畅游艾泽拉斯!当前1.5.2版本的黑盒工坊支持以下功能:【插件安装】海量插件自由选择安装,同时支持正式服以及怀旧服! 【插件管理】本地插件自动检测,一键式更新轻松便捷! 【WA字符串】收录超多WA字符串,大佬配置任你挑选! 【配置同步】角色配置同步,再也不用为小号从头配置插件..
2021-05-24 10:40:38
23934
1
原创 USB设备名字
Chromium的代码里能找到USB设备厂商和型号,但不是很全,比如我机器上的VID_0480&PID_A004就找不到:http://src.chromium.org/svn/trunk/src/third_party/usb_ids/usb.idsWindows注册表里有对应的值,比如:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\U
2013-05-17 20:20:26
4438
1
原创 对IP广播的简单实验
我的路由器连接了3个设备:1.IOS5.0的手机:192.168.1.1002.Android2.3的手机:192.168.1.1013.win7的PC机:192.168.1.102路由器IP地址为192.168.2.1,子网掩码为255.255.255.0当在win 7 的 PC里简单调用PING 192.168.2.255结果如下:多
2012-07-28 12:55:46
3892
原创 libjingle源码解析(6)-【PseudoTcp】建立UDP之上的TCP(4):超时与重传
超时与重传 TCP是面向连接的可靠的运输层。当数据丢失时,TCP需要重传包。TCP通过设置定时器解决这种问题。 对每个连接,TCP有4个不同的定时器: 1)重传定时器:用于当希望收到另一端的确认,而没有收到时。 2)坚持定时器:使窗口大小信息保持不断流动。 3)保活定时器:可检测空闲连接另一端何时崩溃或重启。
2012-06-28 22:36:29
6721
原创 libjingle源码解析(5)-【PseudoTcp】建立UDP之上的TCP(3):对成块数据流的处理
PseudoTcp对成块数据流的处理上一篇谈论了TCP和PTCP对交互数据流的处理方法。这一篇谈论另一个数据流--成块数据流。成块数据流主要采用滑动窗口协议和慢启动算法来控制成块数据的流量。滑动窗口 滑动窗口允许发送方在停止并等待确认前可以连续发送多个分组。因此发送方不必每发一个就停下来等待,这样可以加速数据的传输。这个Nagle算法冲突么?不会,因为成块数据流的分组都是
2012-06-17 19:23:08
6348
原创 libjingle源码解析(4)-【PseudoTcp】建立UDP之上的TCP(2):对交互数据流的处理
对交互数据流的处理TCP包含两类数据流,交互数据流和成块数据流。交互数据流的特点是每个报文数据字节数比较小,大部分是10字节一下,而成块数据流的特点是大部分报文是满长度的,一般能达到MSS。本文先介绍一些TCP和PTCP对交互数据流的处理。交互式输入 Rlogin是典型的交互数据流应用,每一按键都会产生数据分组,使客户端传输一个报文,接连总共产生4个报文:
2012-06-13 22:44:26
6214
原创 libjingle源码解析(3)-【PseudoTcp】建立UDP之上的TCP(1):连接和关闭
PseudoTcp - 建立UDP之上的TCP(1):连接和关闭mail:lihe21327 [at] gmail [dot] com最近阅读了Libjingle的PseudoTcp.LibJingle很是下功夫做P2P了,在UDP之上做了可靠的传输协议PseudoTcp.了解PseudoTcp之前,我们需要了解一些TCP的特性。根据《TCP/IP详解》卷1,可以总结如下:
2012-06-11 22:10:24
9717
1
转载 STUN协议浅析
libjingle的UDP打洞是通过STUN/TURN协议进行的,本文介绍了STUN的基本工作原理。转自:http://blog.163.com/philly_li/blog/static/392674052008414252404/STUN协议的全称是Simple Traversal of User Datagram Protocol Through Network Ad
2012-02-08 21:09:13
5784
原创 libjingle源码解析(2)--libjingle是怎么运作的?
本文主要总结至libjingle源码和官方文章:http://code.google.com/apis/talk/libjingle/libjingle_applications.htmlligjingle的总体架构如下图:1.Application模块Ligjingle的应用程序首先调用XMPP Messaging Component的XmppClient对象进行登录
2012-02-05 18:29:57
12232
原创 libjingle源码解析(1)--从libjingle里能借鉴什么?
最近无聊,翻了翻开源代码,发现libjingle是个好东西,决定研究研究。下载地址:http://code.google.com/p/libjingle/可以用SVN checkout:svn checkout http://libjingle.googlecode.com/svn/trunk/ libjingle-read-only我是用MyJingle来调试的:
2012-01-28 18:19:18
21606
3
转载 [转]解析XMPP协议分析与应用
XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程 序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。XMPP(可扩展消息处理现场协
2012-01-25 20:06:41
6431
原创 python - 如何通过GMail发送邮件:smtplib的使用
神马事SMTP?百科名片SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMT
2012-01-03 22:06:55
18470
原创 Python - 获取校内(人人网)的所有好友照片存储到本地
涉及内容包括:0.POST DATA到校内网1.正则表达式2.urllib2的使用3.Cache机制[TODO]1.SMTP的使用:自动发邮件到指定邮箱2.SQLITE的使用:把图片存储到数据库有问题或者建议,欢迎联系:lihe21327@gmail.com注意要更改Login的账号和密码。只贴代码:#coding=utf-8f
2011-12-23 20:57:40
4844
原创 Python - 体验urllib3 -- HTTP连接池的应用
可以通过 http://code.google.com/p/urllib3/ 下载相关库和资料。先列出使用方法:# coding=utf8import urllib3import datetimeimport timeimport urllib#创建连接特定主机的连接池http_pool = urllib3.HTTPConnectionPool('ent.qq.com')
2011-12-18 00:07:21
35977
原创 Python - 熟悉httplib2
为什么用HttpLib2呢?比起HttpLib多出什么呢?1.支持HTTP和HTTPS,当然在这里和httplib是一样的。两者的文档都这样指出“Note HTTPS support is only available if the socket module was compiled with SSL support.”是的,要依赖于编译选项2.支持HTT
2011-12-17 13:40:43
30850
原创 Python - httplib实例
python的http库非常简单易用,用于快速调试C/S协议 :) 详见:http://docs.python.org/release/2.6/library/httplib.html# coding=gbkimport httplibprint 'Start ...'conn = httplib.HTTPConnection('www.google.com',80)co
2011-11-21 23:33:55
5390
原创 Chrome学习之LazyInstance
LazyInstance顾名思义,就是延迟创造类实例。 那chrome是怎么做到的呢? 为了性能,或者资源,程序中无法立即用到的对象,我们无需立即创造,比如一个界面的菜单对象,当你还没有点击菜单之前就创造了,那他一定会影响软件的启动性能。再比如数据库对象,或者线程...等等,进可能延迟,chrome高效的原因之一,在于调用无数个LazyInstance对象。研究过chr
2011-10-23 13:32:25
5820
原创 原始套接口编程-Ping总结
通过Ping的实现,总结如下:1.Ping可以返回最多9个路由地址,超过9个的可以通过traceroute实现,利用的是ip协议的ttl字段。2.获取路由地址的主机名时gethostbyaddr大部分情况下都会返回NULL,并且这部分很耗时,没必要时最好去掉。
2011-08-27 19:10:55
2017
原创 设计时注意的几点。
1.设计不应该是令人惊讶的。2.让普通的事情变得简单易懂。3.要保持一致性。4.做减法,如果这个设计无处可用,可以丢弃他。多余的设计,会让事情变得复杂。5.最简单的解决方案是最好的。6.一个类抽象一个东西,抽象一个东西到一个类里。7.避免产生同一逻辑和结构的副本。 -- From "Thinking in Python" PS:python语言的设计
2011-06-11 14:47:00
1774
原创 [转]10年软件开发教会我最重要的10件事
0. “面向对象”比你想象的要难得多也许只有我有这种想法,不过我曾经以为计算机科学课上学过的“面向对象”是很简单的东西。我的意思是,创建一些类来模拟现实世界能有多难啊?其实,那还真是挺难的。十年之后,我仍然在学习如何合理地建模。我后悔以前我没有花更多的时间来学习面向对象和设计模式。优秀的建模技术对于每一个开发团队都是非常有价值的。1. 软件开发的难点在于沟通这里的沟通是指与人的沟通,而不是sock
2011-06-10 23:31:00
1877
原创 人为什么觉得心累呢,很值得看!
<br /><br /> 之所以会心累,就是常常徘徊在坚持和放弃之间,举棋不定。生活中总会有一些值得我们记忆的东西,也有一些必须要放弃的东西。放弃与坚持,是每个人面对人生问题的一种态度。勇于放弃是一种大气,敢于坚持何尝不是一种勇气,孰是孰非,谁能说的清道的明呢?如果我们能懂得取舍,能做到坚持该坚持的,放弃该放弃的,那该有多好。<br /> 别让自己心累!应该学着想开,看淡,学着不强求,学着深藏。<br /> 别让自己心累!适时放松自己,寻找宣泄,给疲惫的心灵解解压。<br /> 人
2011-05-07 20:15:00
1805
原创 经典语录
<br />经典语录1:<br /><br />哈佛有一个著名的理论:人的差别在于业余时间,而一个人的命运决定于晚上8点到10点之间。每晚抽出2个小时的时间用来阅读、进修、思考或参加有意的演讲、讨论,你会发现,你的人生正在发生改变,坚持数年之后,成功会向你招手。不要每天抱着QQ/MSN/游戏/电影/肥皂剧……奋斗到12点都舍不得休息,看就看一些励志的影视或者文章,不要当作消遣;学会思考人生,学会感悟人生,慢慢的,你的人生将会发生变化……<br /><br />经典语录2: <br /><br />无论你的
2011-05-06 22:43:00
622
原创 ShellCode编写历程
获取dll列表,并定位kernel32.dll: mov eax,fs:[30h] test eax,eax js os_9xos_nt: mov eax,[eax+0ch] mov esi,[eax+1ch] lodsd mov eax,[eax+8] jmp k_finishedos_9x: mov eax,[eax+34h] mov eax,[eax+7ch] mov eax,[eax+3ch]
2011-04-24 18:22:00
864
原创 zz 一位大牛整理的Python资源
<br />Python基本安装: <br /><br /> * http://www.python.org/ 官方标准Python开发包和支持环境,同时也是Python的官方网站; <br /> * http://www.activestate.com/ 集成多个有用插件的强大非官方版本,特别是针对Windows环境有不少改进; <br /><br />Python文档: <br /><br /> * http://www.python.org/doc/current/lib/lib.h
2011-04-04 20:37:00
942
原创 '转'test和cmp一个很菜很基础的话题! @ pediy.com
看过破解教程,都知道test,cmp是比较关键,可是我一直不清楚它们究竟是怎么比较的,最后下决心找了很多资料,和大家一起把它们弄清楚. 首先看看:状态寄存器(即标志寄存器) PSW(Program Flag)程序状态字(即标志)寄存器,是一个16位寄存器,由条件码标志(flag)和控制标志构成,如下所示: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 OF DF IF TF SF ZF AF PF CF 条件码:①OF(Overflow Flag)溢
2011-03-31 23:28:00
648
WINDOWS核心编程.chm
2012-04-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人