STL list链表的用法详解

本文以List容器为例子,介绍了STL的基本内容,从容器到迭代器,再到普通函数,而且例子丰富,通俗易懂。不失为STL的入门文章,新手不容错过!     0 前言   1 定义一个list   2 使用list的成员函数push_back和push_front插入一个元素到list中   ...

2014-08-11 15:56:55

阅读数 289

评论数 0

PF_RING实现分析

内核版本:Linux 2.6.30.9 PF_RING版本:4.1.0 最近看了一个PF_RING的实现,看了个大概,发上来大家讨论讨论,共同学习。 一、什么是PF_RING PF_RING是一个第三方的内核数据包捕获接口,类似于libpcap,它的官方网址是:http://w...

2014-07-30 11:29:39

阅读数 510

评论数 0

unix下的cc命令

多数UNIX平台都通过CC调用它们的C编译程序.除标准和CC以外,LINUX和FREEBSD还支持gcc.  基本的编译命令有以下几种:  -c     编译产生对象文件(*.obj)而不链接成可执行文件,当编译几个独立的模块,而待以后由链接程序把它们链接在一起时,就可以使用这个选项,...

2014-07-25 14:27:00

阅读数 270

评论数 0

USB协议

USB协议   2011-07-28 15:26:08|  分类: USB|举报|字号 订阅 一 枚举过程: ◆ 用户将一个USB设备插入USB端口,主机为端口供电,设备此时处于上电状态。 ◆主机检测设备。 ◆集线器使用中断通道将事件报告给主机。 ...

2014-07-24 17:38:39

阅读数 288

评论数 0

Windows平台下libnet的编译、安装以及使用

这两天开始搞网络课程设计,要用到libnet去构造数据包。又因为是做某个网络游戏的分析,所以得在windows下面做。 于是开始倒腾。 先从sourceforge上下载了libnet 0.10.11版,用于Windows的是个zip包,然后解压出来放桌面上。 在几个文件夹里翻翻,看了看rea...

2014-07-07 23:26:12

阅读数 2388

评论数 0

技术点详解---IPSec VPN基本原理

IPSec VPN是目前VPN技术中点击率非常高的一种技术,同时提供VPN和信息加密两项技术,这一期专栏就来介绍一下IPSec VPN的原理。 IPSec VPN应用场景 IPSec VPN的应用场景分为3种: 1.      Site-to-Site(站点到站点或者网关到网关):如弯曲...

2014-07-02 10:24:56

阅读数 385

评论数 0

Struts框架原理分析之我见

struts是早期的成熟MVC前端控制层框架,具有诸多优点,近两天又系统了研究了一下框架的原理, 希望能够从原理上研究一下struts框架的实现思路。也就是说如果理解了这些原理的相关应用技术,就可以自己写出 一个山寨版的struts了,当然根据水平的不同,写出的框架的健壮性、扩展性、重...

2014-05-27 09:33:49

阅读数 323

评论数 0

寄存器定义

寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址。在中央处理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序计数器(PC)。在中央处理器的算术及逻辑部件中,包含的寄存器有累加器(ACC)。   寄存器是内存阶层中的最顶端,也是系统获得操作资...

2014-03-14 14:39:11

阅读数 991

评论数 0

KeServiceDescriptorTable 结构及获取

KeServiceDescriptorTable 结构  KeServiceDescriptorTable:是由内核(Ntoskrnl.exe)导出的一个表,这个表是访问SSDT的关键,具体结构是    typedef struct ServiceDescriptorTable {    P...

2014-03-14 14:29:44

阅读数 2096

评论数 0

VC读写注册表实现程序自启动的实现源代码

VC读写注册表实现程序自启动的实现源代码 本页内容为:VC读写注册表实现程序自启动的实现源代码,该文章本站转载自网络,如有侵权请告之,我们将会及时将其删除,其正文内容如下: //写入注册表,开机自启动  HKEY hKey;  //找到系统的启动项  LPCTSTR lpRun ...

2014-03-08 17:14:25

阅读数 740

评论数 0

RTLCOPYMEMORY与RTLMOVEMEMORY

RtlCopyMemory和RtlMoveMemory都是内存复制。其区别是,RtlCopyMemory非重叠复制,而RtlMoveMemory是重叠复制,具体解释如下:    ABCD分别代表三段内存的起始地址和终止地址。如果需要将A到C段的内存复制到B到D段内存上,这是B到C段的...

2014-03-06 14:03:26

阅读数 638

评论数 0

CTL_CODE定义中Method的说明

CTL_CODE定义中有一个Method域,该域的功能意义是定义用于与在驱动程序中获取应用程序数据缓冲区的地址方式。如果你看了我前边的文章,你可以看到在DeviceIoControl的使用说明中对DeviceIoControl参数进行描述中关于lpInBuffer 和lpOutBuffer 的...

2014-03-06 11:29:00

阅读数 461

评论数 0

驱动程序的初始化与清除

驱动程序的DriverUnload例程主要负责删除设备与取消符号连接,同时也可释放在DriverEntry中所分配的资源。当数据包捕获驱动程序卸载时,操作系统调用NPF_Unload函数。调用IoDeleteSymbolicLink函数删除符号连接,调用IoDeleteDevice函数删除设备对象...

2014-03-05 10:30:02

阅读数 813

评论数 0

Windows内核函数(1) - 字符串处理函数

.ASCII字符串和宽字符串 打印一个ASCII字符串: CHAR* string = “Hello”; KdPrint((“%s\n”, string));        //s为小写   打印一个宽字符字符串 WCHAR* string = L”Hello”...

2014-03-05 10:22:22

阅读数 528

评论数 0

VC编程实现动态截获并显示窗口DC

我在网上看到很多屏幕截取的文章,相信大家也看过不少。人类每一次的进步总是建立在别人的基础之上,我今天要做得是如何将一个窗口动态地显示在另外一个窗口上。   方法很简单,核心算法是要完成对一个窗口DC显示到另外一个窗口的DC,为了方便代码的重用,我特地把它放到一个自己编写的函数:  ...

2014-02-28 15:00:06

阅读数 270

评论数 0

实现进程监视清除多余进程

创建多进程处理程序的时候,需要对多进程进行监视,例如QQ启动多了,内存很卡,就得清除一些多余进程。 详细请见代码分析,实现进程监视与清除多余进程 #include "stdafx.h"     #include "Get...

2014-02-28 14:57:21

阅读数 439

评论数 0

VC编程实现内核方法实现进程保护

《Windows Rootkit开发初步》这篇文章大致讲地是Rootkit实现进程隐藏,当时我受益匪浅。后来看到这期另外一篇文章名为《木马编程DIY之线程守护》这篇文章,提到了一个双进程实现进程守护的方法。不过他的引言里提到了Icesword的一种HOOK系统底层函数的方法,但是没有细讲。然后我查...

2014-02-28 14:43:51

阅读数 447

评论数 0

VC判断系统和进程是64位还是32位

//判断操作系统是64位还是32位 //返回TRUE位64位,返回FALSE位32位 /////////////////////////////////////////////////////////////////////////////////////// 方法一: B...

2014-02-27 10:43:15

阅读数 716

评论数 0

strcpy和memcpy的区别

strcpy和memcpy都是标准C库函数,它们有下面的特点。 strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。 已知strcpy函数的原型是:char* strcpy(char* dest, const char* s...

2014-02-27 09:32:44

阅读数 334

评论数 0

获取硬盘的详细信息

用到的常量及数据结构有以下一些: // IOCTL控制码 // #define  DFP_SEND_DRIVE_COMMAND   0x0007c084 #define  DFP_SEND_DRIVE_COMMAND   CTL_CODE(IOCTL_DISK_BASE, 0x0021,...

2014-02-26 17:34:09

阅读数 588

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭