Under the hood

互联网上新生活
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2008年10月16日

摘要: 介绍CE下Interlocked API的实现原理 阅读全文

posted @ 2008-10-16 11:21 sting feng 阅读(1662) 评论(2) 推荐(0)

摘要: 嵌入式系统由定制的硬件平台、定制的驱动程序、定制的系统组件,以及定制的应用程序构成。这么多定制的组件凑在一起,要在一个比较短的时间内把他们凑在一起,配合良好顺利运行不容易。他们中的任何部分都有可能出问题,因此应用程序级别的日志模块显然不足以记录足够的信息,我们需要系统级的解决方案。 阅读全文

posted @ 2008-10-16 11:18 sting feng 阅读(2574) 评论(3) 推荐(0)

摘要: 即使不是最难,随机BUG应该也是最难解决的BUG类型之一。有人也许说,只要找到问题的根源就一定能可靠地重现问题,不能重现只是因为你还没找到问题的根源。这话也许没错,但也还是存在一些情况,即使找到了根源也没法可靠地重现问题,比如这篇文章提到的这个案例就属于这种情况。对付这类随机BUG,我有一些固定的套路。 阅读全文

posted @ 2008-10-16 11:18 sting feng 阅读(1783) 评论(3) 推荐(1)

摘要: 介绍怎么配置Pidgin,让你在公司也能用MSN/GTALK和QQ 阅读全文

posted @ 2008-10-16 11:16 sting feng 阅读(602) 评论(0) 推荐(0)

摘要: 无论你是一个单纯的电脑用户还是一名高级软件工程师,都一定对程序崩溃不陌生。做为一名Windows CE应用程序开发者,你也一定遇到过下图这种场景:这个对话框告诉你,有一个叫installer.exe的程序在地址00019320处崩溃了。如果这个程序归你负责,那么你的问题就来了:怎么找出这个BUG?这篇文章我想谈谈我在这方面的一些经验。 阅读全文

posted @ 2008-10-16 11:16 sting feng 阅读(3613) 评论(7) 推荐(0)

摘要: 很多人感兴趣的用于Diablo II私服的Uploading技术。不过要让很多人失望了,不是谁都能用得了的。 阅读全文

posted @ 2008-10-16 11:16 sting feng 阅读(2041) 评论(3) 推荐(0)

摘要: 装在U盘上的软件,一次安装处处运行。 阅读全文

posted @ 2008-10-16 11:15 sting feng 阅读(562) 评论(0) 推荐(0)

摘要: 提供我自己做的Windows CE 6.0 for VMWare的虚拟机和BSP下载。 阅读全文

posted @ 2008-10-16 11:15 sting feng 阅读(4447) 评论(1) 推荐(0)

摘要: 如何在系统登陆桌面运行程序(续) 阅读全文

posted @ 2008-10-16 11:15 sting feng 阅读(492) 评论(0) 推荐(0)

摘要: 如何在系统登陆桌面运行程序 阅读全文

posted @ 2008-10-16 11:14 sting feng 阅读(914) 评论(0) 推荐(0)

摘要: 介绍在各种Windows操作系统上的OpenThread实现。获取线程句柄是查询线程状态、控制线程运行的关键一部。其他系统上的OpenThread方法在网上都不难找到,Windows CE平台的我还没有看见别人介绍过,我这里是独一份哦。 阅读全文

posted @ 2008-10-16 11:14 sting feng 阅读(7126) 评论(20) 推荐(0)

摘要: 前两天给VS2005打SP1,没办法,没它CE6 R2装不了。没想到这东西要求还挺高。光C盘就得留2G剩余空间。 阅读全文

posted @ 2008-10-16 11:14 sting feng 阅读(244) 评论(0) 推荐(0)

摘要: 如何让你的老电脑快起来 阅读全文

posted @ 2008-10-16 11:14 sting feng 阅读(958) 评论(0) 推荐(0)

摘要: 对VMCEPC BSP的一些更新说明 阅读全文

posted @ 2008-10-16 11:13 sting feng 阅读(517) 评论(0) 推荐(0)

摘要: 在复杂的软件系统中,调试和错误定位是比较麻烦的,很多错误只能在后期才能发现。通常的排除故障的做法是在觉得可能出错的地方多输出一些LOG,通过 LOG信息逐步定位问题。在复杂的场合下,不但要知道在什么地方出错,还得知道它的执行上下文信息。从另一个方面来看,输出太多的信息会影响系统性能,而且无关的信息也会干扰故障诊断。因此,显而易见的理想情况是,系统正常时LOG越少越好,出现故障时输出尽可能多的信息。本文讨论了一些这方面的想法。 阅读全文

posted @ 2008-10-16 11:13 sting feng 阅读(814) 评论(0) 推荐(0)

摘要: 提供我自己做的Windows CE 5.0 for VMWare的虚拟机和BSP下载。 阅读全文

posted @ 2008-10-16 11:13 sting feng 阅读(1940) 评论(0) 推荐(0)

摘要: 嵌入式系统开发入门难不难,从桌面软件开发转入嵌入式系统开发容不容易?我想这可能是很多桌面软件开发程序员想问的问题,我当年也深受其扰。现在这一步跨过去了,回过头来再看,发现桌面软件开发也好,嵌入式系统开发也好,其实并无多大区别。有一种说法讲得好:程序=数据+算法。在嵌入式系统里,数据还是那些数据,算法也还是那些算法,不同的只是细节。 阅读全文

posted @ 2008-10-16 11:12 sting feng 阅读(1097) 评论(0) 推荐(0)

摘要: 详细分析Diablo II的著名外挂d2hackit的工作原理。 阅读全文

posted @ 2008-10-16 11:12 sting feng 阅读(2210) 评论(0) 推荐(0)

摘要: 我做外挂的心路历程,~_~!!b 阅读全文

posted @ 2008-10-16 11:12 sting feng 阅读(2541) 评论(4) 推荐(2)

摘要: 教你如何安全上网和如何对付流氓软件。 阅读全文

posted @ 2008-10-16 11:11 sting feng 阅读(559) 评论(0) 推荐(0)

摘要: CE6和CE5的不靠谱性能简单比较。 阅读全文

posted @ 2008-10-16 11:11 sting feng 阅读(1178) 评论(0) 推荐(0)

摘要: 业余时间写的一些程序。我个人写的程序,原则上我都愿意免费提供给大家使用。有关这些程序的介绍,在我的博客文章里都可以找到。我把它们的下载地址列在这里。有任何问题可以在这里留言,也可以直接给我写信。 阅读全文

posted @ 2008-10-16 11:08 sting feng 阅读(1522) 评论(3) 推荐(0)

摘要: 本文介绍了外挂的其他一些Anti-warden技术以及warden的一些针对措施。总的来说,暴雪和黑客各有各的优势,对于公开发布的外挂,暴雪是占上风的,对于那些在私下用的外挂,黑客还是有一定优势的。 阅读全文

posted @ 2008-10-16 11:07 sting feng 阅读(1302) 评论(0) 推荐(0)

摘要: 完整性检查(Integrity Scan)可以检测出进程代码(exe, dll)是否被改过。这种检查可以用在很多地方。比如说有些流氓软件可能会在一些敏感进程中截获某些API来监控用户的行为,完整性检查可以把它检测出来。另外,完整性检查也可以用来分析依赖于代码截获技术的程序,通过观测这些程序的截获点,以截获点为起点进行逆向分析是一种很有效的方法。本文介绍了完整性检查的实现技术。 阅读全文

posted @ 2008-10-16 11:07 sting feng 阅读(764) 评论(0) 推荐(0)

摘要: 本文介绍如何实现DLL的自我卸载。自我卸载技术在外挂的反检测中是非常必要的。 阅读全文

posted @ 2008-10-16 11:07 sting feng 阅读(873) 评论(0) 推荐(0)

摘要: 本文介绍如何手工创建partnership,让ActiveSync支持Ethernet方式连接。 阅读全文

posted @ 2008-10-16 11:06 sting feng 阅读(929) 评论(0) 推荐(0)

摘要: 本文介绍Warden的一些具体技术实现细节。 阅读全文

posted @ 2008-10-16 11:06 sting feng 阅读(1434) 评论(1) 推荐(0)

摘要: Warden的机制使得暴雪能够在不需要更新客户端的情况下任意更新作弊检测代码。事实上,自从D2升级到1.11以来,Warden的检测mod和外挂双方一直都在针对对方的改变而进化。这一篇介绍外挂如何躲避前一篇提到的Warden mod使用的三种检测方法:DLL扫描、进程扫描和窗口扫描。 阅读全文

posted @ 2008-10-16 11:06 sting feng 阅读(1330) 评论(0) 推荐(0)

摘要: Windows CE有基于Virtual PC的emulator,在VMWare中跑Windows CE有什么意义?简单的答案是,VMWare支持一些Virtual PC(包括Windows CE emulator)不支持的硬件,比如说USB设备。而且根据我的经验,VMWare的性能比Virtual PC强。本文介绍如何针对VMWare虚拟的硬件设备,做一个相应的Windows CE BSP,支持IDE硬盘、声卡、显卡、网卡、USB设备、键盘鼠标等硬件设备。 阅读全文

posted @ 2008-10-16 11:05 sting feng 阅读(1697) 评论(0) 推荐(0)

摘要: Windows CE Remote Process Explorer是一个和Sysinternals的Process Explorer类似的工具,应用于Windows CE系统。如果你想监控CE下每个进程、线程的CPU使用率,或者想知道每个线程被什么模块什么时刻创建、线程当前的调用栈,或者想知道应用程序运行一段时间后进程堆的使用情况、内存碎片的分布,等等,这个工具都能给你直观的答案。 阅读全文

posted @ 2008-10-16 11:04 sting feng 阅读(2288) 评论(2) 推荐(0)

摘要: 在实际的应用开发中,log模块设计是必不可少的一部分,log模块设计的好坏直接影响到系统的性能和日后的维护。总的来说,log模块在功能上除了日志级别、时间和消息正文这些必须的信息外,最好还能记录日志产生时尽可能多的信息,比如线程ID、模块名称、源文件、代码行等。在log接口的设计上则应该尽可能简化,以方便使用。在基于C/C++开发的应用中,log接口通常设计成带可变参数的C风格函数。对C 程序员这是很合理的选择,但是对于强调强类型安全的C++来说,可变参函数的类型不安全特性是最遭C++程序员诟病之处。本文给出了一种基于C++ iostream的类型安全且线程安全的log接口。 阅读全文

posted @ 2008-10-16 11:03 sting feng 阅读(865) 评论(0) 推荐(0)

摘要: 推荐一篇介绍Visual C++对象模型的老文章。这篇文章详细介绍了C++的一些运行时实现细节,诸如类的布局、虚函数机制等。以下摘自原文: This paper looks “under the hood” of C++, explaining “run-time” C++ implementation details such as class layout techniques and the virtual function call mechanism. Questions to be answered include: * How are classes laid out? * How are data members accessed? * How are member functions called? * What is an adjuster thunk? * What are the costs: o Of single, multiple, and virtual inheritance 阅读全文

posted @ 2008-10-16 11:02 sting feng 阅读(279) 评论(0) 推荐(0)

摘要: 在一个线程出现异常行为时,比如说CPU占用率过高,抛出异常等,你一定想知道这个线程是由哪个模块创建的。因此无论在哪个操作系统上,获取线程名称是诊断线程相关问题的重要一步。在Windows NT/2K/XP/2K3等操作系统下,获取线程名称可通过一些现有的API进行。但是在Windows CE下,没有现成的API可以利用。本文介绍如何在Windows CE下从线程ID获取线程名称。 阅读全文

posted @ 2008-10-16 11:02 sting feng 阅读(3435) 评论(3) 推荐(0)

摘要: 本文介绍Diablo II 1.11b时期的反检测机制(The Warden)和外挂发展情况。 阅读全文

posted @ 2008-10-16 11:01 sting feng 阅读(1223) 评论(0) 推荐(0)

摘要: Remote Run Library是一个为部分代码提供完整的远程(这里的远程指不同于本进程的其他进程空间)运行环境(包括在代码中使用隐式API调用、字符串常量、全局 /静态变量、异常保护)的工具。它允许你在任意进程(只要你有足够的权限)运行一段代码甚至一个exe,从而可以让两个或多个可执行文件在同一个进程空间运行。 阅读全文

posted @ 2008-10-16 11:01 sting feng 阅读(503) 评论(0) 推荐(0)

摘要: 本文介绍如何把Windows CE Evaluation版的所有安装文件下载到本地。 阅读全文

posted @ 2008-10-16 11:01 sting feng 阅读(4382) 评论(2) 推荐(0)

摘要: 介绍如何在同一个进程空间运行多份(相同或不同)程序。 阅读全文

posted @ 2008-10-16 11:00 sting feng 阅读(749) 评论(4) 推荐(0)

摘要: SpiderMonkey是Gecko(Firefox浏览器的内核)的JavaScript脚本引擎。这篇教程手把手教你如何利用 SpiderMonkey创建一个能执行JavaScript脚本的C++程序,并让JavaScript脚本操纵你的C++ 程序的内部数据、操作。从这篇教程可以看到在SpiderMonkey引擎的帮助下,让C++程序支持JavaScript脚本是一件很容易的事,更棒的是SpiderMonkey也可以在Macintosh和Unix平台使用。 阅读全文

posted @ 2008-10-16 11:00 sting feng 阅读(2478) 评论(1) 推荐(0)

摘要: 本文介绍针对1.10补丁的外挂检测机制,黑客的一些防御方法。第一回合交锋以黑客的胜利告终。 阅读全文

posted @ 2008-10-16 10:59 sting feng 阅读(778) 评论(0) 推荐(0)

摘要: 本文以一个实际例子介绍了外挂程序的开发过程,解释了外挂程序的各个组成部分,并对源代码进行了详细分析。Diablo II中很多著名外挂如d2maphack、d2hackmap、d2jsp、d2hackit等的工作原理和它基本一样。 阅读全文

posted @ 2008-10-16 10:58 sting feng 阅读(1652) 评论(0) 推荐(0)

摘要: 本文介绍暴雪在Diablo II 1.10 patch中采用的外挂检测技术。 阅读全文

posted @ 2008-10-16 10:56 sting feng 阅读(798) 评论(0) 推荐(0)

摘要: 本文介绍了Diablo II中流行的外挂的基本工作原理。 阅读全文

posted @ 2008-10-16 10:55 sting feng 阅读(1489) 评论(0) 推荐(0)

摘要: 介绍Diablo II 1.10补丁发布之前的各个版本中的作弊检测、反检测机制。 阅读全文

posted @ 2008-10-16 10:54 sting feng 阅读(857) 评论(0) 推荐(0)

摘要: 介绍Diablo II中流行的各种外挂。 阅读全文

posted @ 2008-10-16 10:54 sting feng 阅读(3319) 评论(1) 推荐(0)

摘要: Hacking DiabloII这一系列文章将从游戏黑客的角度介绍针对Diablo II的一些外挂技术以及暴雪最新的防外挂技术,供对外挂技术感兴趣的朋友和游戏开发者参考。 阅读全文

posted @ 2008-10-16 10:51 sting feng 阅读(607) 评论(0) 推荐(0)

摘要: 对MD5算法的一些想法及其最新成果的一些可能性应用。 阅读全文

posted @ 2008-10-16 10:50 sting feng 阅读(1086) 评论(1) 推荐(0)

摘要: 我常用的VC快捷键 阅读全文

posted @ 2008-10-16 10:49 sting feng 阅读(298) 评论(0) 推荐(0)