摘要: 1. Introduction MD5算法是一种消息摘要算法(Message Digest Algorithm),此算法以任意长度的信息(message)作为输入进行计算,产生一个128-bit(16-byte)的指纹或报文摘要(fingerprint or message digest)。 两个不同的message产生相同message digest的几率相当小,从一个给定的message ...阅读全文
07 2009 档案
摘要: TEA(Tiny Encryption Algorithm) 是一种简单高 效的加密算法,以加密解密速度快,实现简单著称。算法真的很简单,TEA算法每一次可以操作64-bit(8-byte),采用128-bit(16- byte)作为key,算法采用迭代的形式,推荐的迭代轮数是64轮,最少32轮。目前我只知道QQ一直用的是16轮TEA。没什么好说的,先给出C语言 的源代码(默认是32轮):1v...阅读全文
摘要: 学习高效编程的有效途径之一就是阅读高手写的源代码,CRT(C/C++ Runtime Library)作为底层的函数库,实现必然高效。恰好手中就有glibc和VC的CRT源代码,于是挑了一个相对简单的函数strlen研究了一下,并对各种实现作了简单的效率测试。strlen的函数原形如下:size_t strlen(const char *str);strlen返回str中字符的个数,其中str...阅读全文
摘要: 1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。sizeof还可以用函数做参数,比如: short f();printf("%d\n", size...阅读全文
摘要: CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。不管怎样,使用CString有很多特殊的技巧,特别是对于纯C背景下走出来的程序员来说有点难以学习。这篇文章就来讨论这些技巧。 使用CString可以让你对字符串的操作更加直截了当。这篇文章不是CString的完全手册,但囊括了大部分常见基本问题。这篇文章包括以下内容: C...阅读全文
摘要: @echo off color 1f Title XP端口-进程查询 setlocal enabledelayedexpansion echo ╔- -╗ echo 本机开放的端口及使用该端口的进程 echo ╚- -╝ echo ------------------------------------ echo 端口号 进程名称 ...阅读全文
摘要: 1 进程与进程通信 进程是装入内存并准备执 行的程序,每个进程都有私有的虚拟地址空间,由代码、数据以及它可利用的系统资源(如文件、管道等)组成。多进程/多线程是Windows操作系统的一个 基本特征。Microsoft Win32应用编程接口(Application Programming Interface, API)提供了大量支持应用程序间数据共享和交换的机制,这些机制行使的活动称为进程...阅读全文
摘要: NDIS HOOK是专业级防火墙使用的一种拦截技术,NDIS HOOK的重点是如何获得特定协议对应NDIS_PROTOCOL_BLOCK指针,获得了该指针,接下来就可以替换该协议所注册的收发函数,而达到拦截网络数据的目的。 获 得NDIS_PROTOCOL_BLOCK指针的方法一般是用NdisRegisterProtocol注册一个新的协议,所获得的协议句柄实际上就是一 个NDIS_PROTOCO...阅读全文
摘要: 首先得弄清楚同步、异步、阻塞、非阻塞的概念。 同步和异步是针对通讯的工作模式,阻塞和非阻塞是指socket的I/O操作。 实际上对于socket,只存在阻塞和非阻塞,同步与异步是在程序实现上有所不同。 以阻塞的方式执行recv函数,在没有收到数据前,此函数是不会返回的,所以这很容易执行函数的线程处于等待I/O上的数据状态,然后被挂起。非阻塞就不 一样,执行recv时候不管有没有数据都立即返回,有数...阅读全文
摘要: 微软研究院Detour开发包之API拦截技术我们截获函数执行最直接的目的就是为函数增添功能,修改返回值,或者为调试以及性能测试加入附加的代码,或者截获函数的输入输出作研究,破解使用。 通过访 问源代码,我们可以轻而易举的使用重建(Rebuilding)操作系统或者应用程序的方法在它们中间插入新的功能或者做功能扩展。然而,在今天这个商业 化的开发世界里,以及在只有二进制代码发布的系统中,研究人员几乎...阅读全文
摘要: 转自 http://www.cnblogs.com/flying_bat/archive/2004/10/10/50611.html 本 文简单地介绍了NDIS (Network Driver Interface Specification 即网络驱动接口规范),以及应用程序如何与一个驱动程序交互,如何最好地利用驱动程序。作为例子,本文提供了一个应用程序使用Packet.sys的网络 协议层驱动程...阅读全文
摘要: 首先新创建个项目,打开VS2008,新建个网站项目,我们添加新项时会发现以前在vs2003或vs2005中的“移动Web窗体”项没有了,下图为vs2003和2005中的。 vs2008中就没有“移动Web窗体”这一项,这是因为微软并未提供相应 的模板。这确实很令人疑惑,百度了下网上的说法:据Microsoft-Visual Web Develope...阅读全文
摘要: 最近很多刚入门的朋友问一些很简单的“怎么用”的问题。这篇文章就是解决这个问题的。欢迎分享更多好的工具。 第一个问题,如何安装开发工具? 1.安装Visual Studio。以下的安装顺序不能更改。 2.安装Activesync 4.5。 安装之后打开ActiveSync界面如下,当手机和电脑处于未连接状态时,会显示状态栏白色的“小圈圈”,连上后会变...阅读全文
摘要: 原文地址: http://blog.csdn.net/marsgongna/archive/2008/12/04/3442247.aspx 手机作为人们必备的移动通信工具,目前在全球已经有超过10亿的用户,其数量还在不断地增长。随着移动多媒体时代的到来,用手机看电视,用手机看电影,用手机听音乐等使用移动流媒体技术的应用,已经在中国迅速发展起来。 一、什么是流媒体技术? 流媒体技术是从互联网上发展...阅读全文
摘要: 软件安装 这个版本的软件,可以从Apple.com 上面免费下载.当然还有一点小麻烦就是你必须注册用户,以保证让Apple 了解你的一些情况. 注册是非常简单的,而且至少到现在为止,注册的用户还非常少,这使得我可以注册到annie这个名字. 之后点击页面上的下载按钮,在弹出的验证框中输入你的用户名和密码,等待...(到Apple 下载东西明显就不如到MS下载的快...) 你下载到的应该是一...阅读全文
摘要: 安装方法:其实很简单,如下: Step one: 到这里下载MinGW,网速慢的话可能打不开,是个外国网站(上面的网站镜像可能出了点问题,有的东西下载下来却不能用,等我有空我会给大家提供下载)。 Step two :双击安装包,一切按默认设置,一路的“下一步”以后就能搞定。 Step three:环境变量可能会在安装过程中自动设置好,在cmd中输入gcc测试一下,假如显示 ...阅读全文
摘要: 下载源代码 本文主要介绍了 OpenSCManager、CreateService、OpenService、ControlService、DeleteService、 RegisterServiceCtrlHandler、SetServiceStatus、StartServiceCtrlDispatcher等操 作服务程序的主要几个API的用法,具体的函数参数大家可以查阅MSDN。 ...阅读全文
摘要: 摘要 Windows 服务被设计用于需要在后台运行的应用程序以及实现没有用户交互的任务。为了学习这种控制台应用程序的基础知识,C(不是C++)是最佳选择。本文将建立并 实现一个简单的服务程序,其功能是查询系统中可用物理内存数量,然后将结果写入一个文本文件。最后,你可以用所学知识编写自己的 Windows 服务。 当初我写第一个 NT 服务时,我到 MSDN 上找例子。在那里我找到...阅读全文
摘要: 让IIS 6.0支持FLV的方法 单击【开始】→【程序】→【管理工具】→【IIS管理器】,逐步展开“本地计算机”、“网站”,在你的网站上右击,选择【属性】,单击“HTTP头”选项 卡→单击“MIME类型”按钮,再单击“新建”按钮...阅读全文

