自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

心之所向,身之所往

专注于多媒体技术(H264、HEVC、流媒体、ffmpeg、DirectShow、DXVA、MediaFundation)

  • 博客(31)
  • 资源 (4)
  • 收藏
  • 关注

原创 注册表编程

1、写注册表OnRegWrite(){   HKEY hKey;  //定义一个注册表项句柄  RegCreateKey(HKEY_LOCAL_MACHINE,"Software\\chenchong\\admin",&hKey);  //一般写到HKEY_LOCAL_MACHINE下面。创建注册表项,如果表项已经存在,则打开。  RegSetValue(hKey,NULL,R

2013-03-31 15:30:37 794

转载 一个简单但详细的解释Windows文件映射读取数据文件的例子

一个简单但详细的解释Windows文件映射读取数据文件的例子  #include #include string.h>#include string>#include using namespace std;int main(int argc, char *argv[]){ // 步骤1 打开文件FILE_FLAG_WRITE_THROUGH

2013-03-31 12:04:30 975

转载 进程间通信——共享内存

1、由操作系统分配的一块内存,被映射到多个进程的地址空间。每当有一个进程进行了映射,共享内存计数器会+1。2、编程模型:(1)创建共享内存(2)建立映射(3)解除映射一则简单的Windows共享内存IPC代码 Windows共享内存可以让两个进程对同一块内存进行读写。以下有2个进程,a.cpp生成A进程,b.cpp生成b进程。那么a进程将不停地读名为"G

2013-03-31 12:02:24 765

转载 多线程编程

多线程在编程中有相当重要的地位,我们在实际开发时或者找工作面试时总能遇到多线程的问题,对多线程的理解程度从一个侧面反映了程序员的编程水平。       其实C++语言本身并没有提供多线程机制,但Windows系统为我们提供了相关API,我们可以使用它们来进行多线程编程。本文就以实例的形式讲解多线程编程的知识。       创建线程的API函数C++代码HAN

2013-03-31 11:38:05 782

转载 小甲鱼PE详解之基址重定位详解(PE详解10)

今天有一个朋友发短消息问我说“老师,为什么PE的格式要讲的这么这么细,这可不是一般的系哦”。其实之所以将PE结构放在解密系列继基础篇之后讲并且尽可能细致的讲,不是因为小甲鱼没事找事做,主要原因是因为PE结构非常重要,再说做这个课件的确是很费神的事哈。在这里再次强调一下,只要是windows操作程序,其就要遵循PE格式,再说人家看雪的网址就是www.pediy.com。简单的讲是可以,但是怕

2013-03-24 16:04:37 787

转载 小甲鱼PE详解之输入表(导出表)详解(PE详解09)

小甲鱼PE详解之输出表(导出表)详解(PE详解09)当PE 文件被执行的时候,Windows 加载器将文件装入内存并将导入表(Export Table) 登记的动态链接库(一般是DLL 格式)文件一并装入地址空间,再根据DLL 文件中的函数导出信息对被执行文件的IAT 进行修正。( 基础补充:很多朋友可能看到这里会有点懵,各位看官请允许小甲鱼啰嗦一下,照顾初学者。我们都明白Wi

2013-03-24 16:03:53 862

转载 小甲鱼PE详解之输入表(导入表)详解2(PE详解08)

在此之前,我们已经对这个输入表进行了一些实践和理解,这有助于大家对这个概念更进一步的加深认识。小甲鱼觉得,越是复杂的问题我们应该越是去动手操作它,认识它,这样才容易熟悉它!在上一节课我们像小鹿一样的乱撞,终于撞到了输入表里边包含的函数名称,嘿嘿,不过地址,我们还是没能找着……这节课我们将深入来剖析输入表的结构,通过结合实例分析来帮助大家理解输入表的工作原理。输入表结构回

2013-03-24 16:03:14 1976

转载 小甲鱼PE详解之输入表(导入表)详解(PE详解07)

捷径并不是把弯路改直了,而是帮你把岔道堵上!走得弯路跟成长的速度是成正比的!不要害怕走上弯路,弯路会让你懂得更多,最终还是会在终点交汇!岔路会将你引入万劫不复的深渊,并越走越深……在开始讲解输入表(导入表)概念之前,请允许小甲鱼童鞋用简短的几句话来总结之前我们学过的内容,并做进一步的思想综合提升,注意咯!首先,我们知道PE 文件中的数据被载入内存后根据不同页面属性被划分

2013-03-24 16:02:33 936

转载 小甲鱼PE详解之区块描述、对齐值以及RVA详解(PE详解06)

各种区块的描述:很多朋友喜欢听小甲鱼的PE详解,因为他们觉得课堂上老师讲解的都是略略带过,绕得大家云里雾里~刚好小甲鱼文采也没课堂上的教授讲的那么好,只能以比较通俗的话语来给大家描述~通常,区块中的数据在逻辑上是关联的。PE 文件一般至少都会有两个区块:一个是代码块,另一个是数据块。每一个区块都需要有一个截然不同的名字,这个名字主要是用来表达区块的用途。例如有一个区块叫.rdata

2013-03-24 16:01:12 808

转载 小甲鱼PE详解之区块表(节表)和区块(节)续(PE详解05)

这一讲我们结合实例来谈谈区块表的定义以及各个属性的含义。首先,我们先用之前学过的一点知识在二进制文件中手动翻找区块表,这样做的好处是可以使你很快的对PE结构牢记于心。学来的东西就是能用的东西,不能用的理论是空谈,是瞎扯。(具体过程演示大伙可参考小甲鱼的视频教程:《解密系列》系统篇.第五讲)这里我们经过千辛万苦终于找到了我们的区块表了(当然将来我会教大家写一个自己的工具,让工具去

2013-03-24 15:59:54 680

转载 小甲鱼PE详解之区块表(节表)和区块(节)(PE详解04)

到此为止,小甲鱼和大家已经学了许多关于 DOS header 和 PE header 的知识。接下来就该轮到SectionTable (区块表,也成节表)。(视频教程:http://fishc.com/a/shipin/jiemixilie/)越学越多的结构,大家可能觉得PE挺乱挺杂的哈,所以这里插播下一下必要知识的详细注释,大伙可以按需要看。

2013-03-24 15:35:52 908

转载 小甲鱼PE详解之IMAGE_OPTIONAL_HEADER32 结构定义即各个属性的作用(PE详解03)

咱接着往下讲解IMAGE_OPTIONAL_HEADER32 结构定义即各个属性的作用!(视频教程:http://fishc.com/a/shipin/jiemixilie/)接着我们来谈谈 IMAGE_OPTIONAL_HEADER 结构,正如名字的意思,这是一个可选映像头,是一个可选的结构,但是呢,实际上上节课我们讲解的 IMAGE_FILE_HEADER

2013-03-24 11:31:16 804

转载 小甲鱼PE详解之IMAGE_NT_HEADERS结构定义即各个属性的作用(PE详解02)

PE Header 是PE相关结构NT映像头(IMAGE_NT_HEADER)的简称,里边包含着许多PE装载器用到的重要字段。下边小甲鱼将为大家详细讲解哈~(视频教程:http://fishc.com/a/shipin/jiemixilie/)首先是IMAGE_NT_HEADERS 结构的定义:(啥?结构不会,先看看小甲鱼童鞋的《零基础入门学习C语言》关于结构方面的章节

2013-03-24 10:28:12 1274

转载 小甲鱼PE详解之IMAGE_DOS_HEADER结构定义即各个属性的作用(PE详解01)

(注:最左边是文件头的偏移量。)IMAGE_DOS_HEADER STRUCT { +0h  WORD  e_magic  // Magic DOS signature MZ(4Dh 5Ah)     DOS可执行文件标记 +2h  WORD  e_cblp //Bytes on last page of file   +4h  WORD  e_cp  //Pages

2013-03-24 10:13:04 990

转载 PE文件的执行顺序

当一个PE文件被执行时,PE装载器首先检查DOS MZ header里的PE header的偏移量。如果找到,则直接跳转到PE header的位置。当PE装载器跳转到PE header后,第二步要做的就是检查PE header是否有效。如果该PE header有效,就跳转到PE header的尾部。紧跟PE header尾部的是节表。PE 装载器执行完第二步后开始读取节表中的节段信

2013-03-24 10:10:20 858

转载 深度解析VC中的消息传递机制

摘要:Windows编程和Dos编程,一个很大的区别就是,Windows编程是事件驱动,消息传递的。所以,要学好Windows编程,必须对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的分析。一、什么是消息?消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向Windows发出一个通知

2013-03-22 23:33:45 689

转载 子窗口和父窗口的消息传递

【转】子窗口和父窗口的消息传递子窗口和父窗口的消息传递 1. 什么是窗口       2. 什么是消息       3. 什么是窗口过程函数       4. 怎么创建窗口       5. 消息是怎么传递并处理的              用调用windows API的方法创建了两个窗口,父窗口和子窗口。父窗口处理了鼠标左键按下和鼠标右键按下的消息

2013-03-22 23:25:15 1589

原创 设计模式——建造者模式

1、建造者模式2、代码#include #include using namespace std;class PersonBuilder{public:    virtual void BuildHead() = 0;virtual void BuildBody() = 0;virtual void BuildArm() = 0;virtual

2013-03-17 22:49:23 579

原创 设计模式——外观模式

1、外观模式2、代码#include #include using namespace std;class Stock1{public:void sell(){printf("sell stock1\n");}void buy(){printf("buy stock1\n");}};class Stock2{

2013-03-17 21:47:43 546

原创 设计模式——模板方法模式

1、模板方法2、代码#include using namespace std;class AbstractClass{public:virtual void PrimitiveOperation1(){printf("AbstractClass PrimitiveOperation1\n");}virtual void PrimitiveOper

2013-03-16 23:01:23 638

原创 设计模式——创建型——原型模式

1、原型模式2、代码#include using namespace std;class Resume{protected:char* name;// 名字不会变int age;  //年龄可能会变public:Resume(){}virtual ~Resume(){}virtual Resume* Clone()

2013-03-12 23:36:40 629

原创 设计模式——抽象工厂模式

1、抽象工厂模式2、代码#include using namespace std;class OldOperation;class NewOperation;class AddOne;class AddTwo;class SubOne;class SubTwo;class OldOperation{public:virtu

2013-03-10 20:55:18 596

原创 设计模式——工厂方法模式

工厂方法模式代码:#include using namespace std;class Operation{public:virtual int process(int a,int b);};int Operation::process(int a,int b){return 0;}class AddOperation:pub

2013-03-10 16:28:36 624

原创 设计模式——简单工厂模式

简单工厂模式:代码:#include using namespace std;class Operation{public:virtual int process(int a,int b);};int Operation::process(int a,int b){return 0;}class AddOperation:pu

2013-03-10 10:25:58 562

原创 设计模式——代理模式

1、代理模式2、代理模式的要点(1) 代理模式与真实对象有同样的接口,这样保证在任何使用 RealSubject 的地方都可以使用 Proxy。(2) Proxy 保存一个真实象的引用,这样可以访问 RealSubject 对象。3、代码#include #include using namespace std;class S

2013-03-06 23:28:16 664

原创 设计模式——装饰者模式

案例:星巴克咖啡销售系统        饮料由 原料(咖啡) 和 调料(Milk 、Mocha等)组成,价格由原料和调料的价格相加。原料有多种,调料也有多种,所有就有多种不同的组合。设计:类爆炸式设计问题:如果原料和调料增加,将使类的个数成指数增长。装饰者模式设计:代码:#include #include using namespace std;

2013-03-05 00:09:09 680

原创 设计模式——策略模式

案例:鸭子游戏           有两种鸭子,MallardDuck和RedheadDuck,鸭子的行为有Quack 和 swim 和fly 和display。两种鸭子的Quack、Swim、Fly 行为是一样的,display则不同。设计:     变化:1、要让MallardDuck鸭子可以Fly,但是RedheadDuck不可以Fly这么办?2、两种鸭子Quck、S

2013-03-03 15:02:35 454

转载 UML_详细教程

staruml_详细教程http://wenku.baidu.com/view/2873fdef0975f46527d3e1ef.html

2013-03-03 00:02:10 563

原创 UML动态建模——时序图、协作图、状态图、活动图

北京圣思园OOAD与UML教学视频学习笔记1、*时序图(Sequence Diagram)概念:对象、生命线、消息、返回返回值:用虚线,可以没有的。2、协作图3、状态图4、活动图  Activity Diagram

2013-03-02 22:36:46 4339

原创 UML静态建模——用例图、类图、对象图、组件图、部署图

【北京圣思园OOAD与UML教学视频学习笔记】绘图工具:StarUML下载地址:http://staruml.softonic.cn/1、用例图 User Case DiagramStarUML中Export Diagram可以导出图片。2、类图 Class Diagramattribute 属性 + 表示public一般很简单的方法,不需要

2013-03-02 22:35:51 12400

原创 UML——关联、依赖、聚集、泛化

【北京圣思园OOAD与UML教学视频学习笔记】1、关联关系人和计算机:没人人,可以用计算机,没有计算机,可以有人。2、依赖关系3、聚集关系4、泛化关系

2013-03-02 22:24:51 2087

H264码流NALU分析

H264码流,NALU结构分析,可以进行二进制分析

2014-07-20

计算机专业各大公司面试题

计算机专业各大公司笔试、面试题,包括百度、腾讯、华为、中心、微软、迅雷、搜狐、网易、盛大等。

2011-04-19

腾讯面试算法,体验设计高效算法重要性

腾讯面试算法,体验设计高效算法重要性,当数据量很大时,效果更为明显,有图!

2011-04-19

纯正美语发音100个秘籍

纯正美语发音100个秘籍,介绍美语发音特点,如何发说纯正口语。呵呵!

2010-06-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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