上一页 1 2 3 4 5 6 7 8 9 10 ··· 17 下一页
摘要: Win7与原来的XP和Win2003相比,安全控制方面更严格。比如,当我们以administrator登陆XP或Win2003时,运行所有的程序即是以管理员的身份启动的。但当以administrator登陆Win7时,通常状态下,运行普通程序是以普通用户的身份启动的。当我们的WinForm应用程... 阅读全文
posted @ 2011-01-22 11:04 zhuweisky 阅读(4005) 评论(8) 推荐(2)
摘要: 本文所描述的TCP代理服务器工作于网络协议层次中的应用层,位于传输层之上。只要是以TCP的方式为客户提供服务的(包括我们的HTTP服务器,HTTP底层走的仍然是TCP),我们都可以在真正的TCP服务器前面增加代理服务器。 一.TCP透明代理的作用TCP代理服务器可以隐藏背后真正TCP服务器,如... 阅读全文
posted @ 2011-01-18 10:15 zhuweisky 阅读(6351) 评论(8) 推荐(11)
摘要: 作为一个搞软件的,能有机会经历被黑客攻击、并参与到抵抗攻击方案的讨论与实施中来,我觉得是很幸运的。虽然每天都有很多攻击产生,但是这种攻击能降临到我们这种不是很知名的公司身上,确实非常难得。下面就把我们对攻击相关的一些认识整理一下并记录,我们也是刚开始积累这些经验,所以有什么错误和不足之处,希望大家不吝斧正和补充。 虽然,我们经常看到一些门户网站被攻击,但是攻击者并不局限于只攻击网站,他可以攻击你对外提供的一切服务,比如,攻击你的游戏服务器、攻击DNS服务器等等。一、为什么会产生攻击?所有攻击的产生都有其背后的原因,我们能想到的有以下几点:(1)黑客小试身手,拿你的服务做试验。真正有实力的黑客是 阅读全文
posted @ 2011-01-05 17:20 zhuweisky 阅读(3161) 评论(3) 推荐(5)
摘要: 我们的网络游戏采用tcp进行通信,服务端程序绑定8300端口,为游戏客户端提供服务,游戏已经上线稳定运行两年多,从今年9月份开始至今碰到了3次攻击,3次攻击所导致的情况一样,描述如下: (1)从应用层上来看,攻击者每次攻击时,与8300端口都有建立最多两、三百个tcp连接。 (2)从防火墙监控来看, 阅读全文
posted @ 2010-12-23 10:30 zhuweisky 阅读(14384) 评论(45) 推荐(9)
摘要: (题外话:前面连续N篇介绍都是一些应用比较复杂的类,这篇来个简单易懂的)1.缘起: .NET Framework提供的Soap序列化的方式可以实现对象的xml序列化和反序列化(object xml) ,但是它有三个缺点:(1) 它要求对象的类型定义时必须打上[Serializable]标签,这是强... 阅读全文
posted @ 2010-12-10 09:51 zhuweisky 阅读(3084) 评论(5) 推荐(4)
摘要: 1.缘起: 在增量自动获取器章节的缘起部分,我们曾提到增量缓存,本节我们将深入探讨它以及用于管理增量缓存的管理器。我们还是以增量自动获取器章节提到的例子作为基础,并做更进一步的讨论。 OK,现在让我们开始这有趣的旅程。首先,基于前面例子给出的上下文,我们知道IIncreaseAutoRetrieve... 阅读全文
posted @ 2010-11-04 10:25 zhuweisky 阅读(2355) 评论(2) 推荐(5)
摘要: 1.缘起:假设我们的订单报表系统,需要能够实时地统计当天的已成交订单的报表。最直观的解决方案就是,当每次接收到查询报表的请求时,就从存储设备读取当天所有已成交的订单,然后再进行分析计算给出结果。这是可行的,而且得到的结果也是非常实时的。但是,这种方式无疑也是非常低效的,因为我们报表数据的统计过程可能... 阅读全文
posted @ 2010-10-06 14:46 zhuweisky 阅读(2786) 评论(2) 推荐(5)
摘要: Speex是一套开源的音频编解码库,最新版本还包含了回音消除和防抖动等功能,如果我们想开发语音聊天或视频会议这样的系统,Speex将是一个不错的选择。到 http://www.speex.org可以下载Speex的源码(编译后的dll为libspeex.dll),最新版本为1.2。不过源码是用C++ 阅读全文
posted @ 2010-09-16 10:57 zhuweisky 阅读(13377) 评论(63) 推荐(7)
摘要: 本实验用于测试ESFramework网络通信框架服务端引擎的性能,测试程序使用ESFramework 4.0版本。 一.准备工作 测试的机器总共有3台,都是普通的PC,一台作为服务器,两台作为客户端。 作为服务器是PC配置如下: 操作系统:Windows Server 2003 Enterprise 阅读全文
posted @ 2010-09-11 12:51 zhuweisky 阅读(6041) 评论(35) 推荐(5)
摘要: (在阅读该文之前,请先阅读ESFramework 4.0 概述 ,会对本文的理解更有帮助。)ESFramework/ESPlatform 4.0 的终极目标是为百万级的用户同时在线提供支持,因为强大,所以使用也较为复杂,配置也较多。但是如果我们的应用只是一个中小型的通信应用(同时在线5000人以下),直接使用ESPlatform就有点显得杀鸡用牛刀了。ESPlus.Rapid提供了一种快速的方式,来解决类似中小型的通信应用,以最简洁的方式来使用ESFramework。 使用ESPlus.Rapid来构建你的ESFramework通信程序,你只需要了解两个引擎(服务端引擎和客户端引擎)和几个组件 阅读全文
posted @ 2010-09-11 11:49 zhuweisky 阅读(8495) 评论(16) 推荐(9)
摘要: windows 7和vista提高的系统的安全性,同时需要明确指定“以管理员身份运行”才可赋予被运行软件比较高级的权限,比如访问注册表等。否则,当以普通身份运行的程序需要访问较高级的系统资源时,将会抛出异常。 如何让程序在启动时,自动要求“管理员”权限了,我们只需要修改app.manifest... 阅读全文
posted @ 2010-08-27 11:44 zhuweisky 阅读(8593) 评论(13) 推荐(2)
摘要: 成熟的C#网络通信框架ESFramework,从最初的单纯的C#网络通信框架,历经10年,已经发展为支持包括安卓、IOS、Xamarin等多个平台的跨平台通信框架。 阅读全文
posted @ 2010-08-12 15:54 zhuweisky 阅读(40366) 评论(63) 推荐(35)
摘要: 当Form包含自定义控件,或UserControl存在嵌套时,外层的对象就会接收不到KeyDown等事件了,但是,我们可以通过override基类的ProcessDialogKey方法来达到同样的效果,比如:Code highlighting produced by Actipro CodeHi... 阅读全文
posted @ 2010-07-10 15:00 zhuweisky 阅读(1733) 评论(0) 推荐(0)
摘要: 1.缘起:从IMultiTree到IAgileMultiTree,一切进展得都不错。但是,还有改进的地方。多叉树的一个优点在于,根据指定的节点能够非常迅速地找到其所有的子节点。但是缺点在于,根据节点值的ID定位到目标节点不够快,因为需要对所有的节点进行遍历操作。当节点非常多、层次非常深时,这种定位操... 阅读全文
posted @ 2010-06-30 10:18 zhuweisky 阅读(4285) 评论(7) 推荐(2)
摘要: 如果我使用TcpListener绑定本地的7000端口,并启动监听。然后,再使用TcpClient绑定本地7000端口,此时需要开启TcpClient的地址重用设置:Code highlighting produced by Actipro CodeHighlighter (freeware)h... 阅读全文
posted @ 2010-05-26 11:42 zhuweisky 阅读(2489) 评论(3) 推荐(0)
摘要: 1.缘起: 我们还是以多叉树IMultiTree章节介绍的那个例子来继续讲解。假设,在系统运行的过程中,集团又成立了分公司D及其下属的一些单位,这些资料已经被存入了数据库中,但是这些信息在我们当前正在运行的MultiTree实例中并不存在,如果此时向MultiTree实例请求与D分公司相关的信息,那... 阅读全文
posted @ 2010-05-12 09:54 zhuweisky 阅读(2504) 评论(2) 推荐(5)
摘要: 1.缘起:假设我们要描述一个集团公司的组织结构,这个集团公司的体系分为如下几层:集团、公司、子公司、部门、小组。即一个集团由多个公司构成,每个公司又有几个子公司构成,每个子公司拥有多个部门,每个部门又内分为几个小组。很明显,这种体系结构就是一个多叉树。我设计了ESBasic.ObjectManage... 阅读全文
posted @ 2010-04-18 15:08 zhuweisky 阅读(3865) 评论(5) 推荐(4)
摘要: 对于集合的遍历,使用foreach是非常方便的,但是Emit动态生成foreach的代码就要复杂很多。它涉及到以下几个方面:(1)IEnumerable<> 是所有可枚举类型的基础接口。(2)IEnumerator<>,通过IEnumerable<> 接口的GetEnumerator方法可以获取枚举器IEnumerator<>,而对集合元素的遍历正是... 阅读全文
posted @ 2010-04-02 11:42 zhuweisky 阅读(2152) 评论(2) 推荐(0)
摘要: 我们在使用GDI+实现类似画图板这样的系统时,经常需要支持平移、滚动条、缩放等功能、解决绘制时的闪烁,对于缺乏GDI+开发经验的朋友,经常会在这些问题上纠缠一段或长或短的时间。在这里,我将自己的经验小结一下,给后来的朋友作个参考。1.如何解决绘制闪烁?(1)所有的绘制动作都应该Paint事件中完成。  比如,即使我们要拖动一个View object,通常在MouseMove事件中处理拖动行为,但是... 阅读全文
posted @ 2010-03-26 15:02 zhuweisky 阅读(4108) 评论(2) 推荐(4)
摘要: 1.缘起: 当数据源中的数据量多到一定程度时,我们在查询时就经常使用分页策略。如果数据源是一个完整的整体,这没有什么大不了的,我们经常就在做类似的事情。但是,如果数据源不是一个完整的整体,而是由很多有序的片段构成的,并且不同的片段可能位于不同的位置(比如,位于不同的服务器节点上的内存中),甚至,每个... 阅读全文
posted @ 2010-03-10 14:21 zhuweisky 阅读(2526) 评论(4) 推荐(1)
上一页 1 2 3 4 5 6 7 8 9 10 ··· 17 下一页