摘要: 以War3为例,启动魔兽后,首先是如何看见主机的问题:魔兽是通过TCP/UDP协议进行数据发送的,那如何实现看到对方?我们这样:每个机器监听一个固定的UDP端口(比如6112),一旦任何机器建立主机,它就向整个局域网所有的机器的6112端口广播“我建立了主机”的信息,这样,其他机器接收到这个信息,就知道有主机建立了(广播只存在于UDP协议,使用UDP.sendto向地址255.255.255.255实现)。来看看HF和VS平台怎么实现的:1.挂钩UDP.Sendto,将所有广播信息(即发向地址255.255.255.255)的消息截获,然后把消息重新打包(比如{本机虚拟IP+消息数据}的形式) 阅读全文
posted @ 2012-09-23 23:43 richardw 阅读(1474) 评论(0) 推荐(0) 编辑
摘要: 来自:BCB6自带的正则表达式功能对于C++下的正则表达式,我想用得比较多的应该就是Boost里的regex了。自从BCB2009自带了Boost1.35以后,这个regex也自然进入了BCB自带的功能行列。对于还没用上BCB2009的人来说也不用为了一个正则表达式功能急着找boost的安装方法,其实BCB6早已经帮我们准备好了:TRegexp和pcre库。不过当年Borland也太“谦虚”了点,竟然没把这么重要的功能写进帮助?!!先看看轻量级的TRegexp说它是轻量级是因为它没有完整支持正则表达式,功能也很单一,只有一个find。看下面代码演示:#include<stdio.h> 阅读全文
posted @ 2012-09-23 23:23 richardw 阅读(559) 评论(0) 推荐(0) 编辑
摘要: Apache中模块mod_rewrite的使用示例 阅读全文
posted @ 2012-09-23 03:06 richardw 阅读(212) 评论(0) 推荐(0) 编辑