上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页

2014年7月18日

随手写了几行代码

摘要: 看COM的时候随手写了一行代码,写完发现是工厂方法模式。。。废话不多说了#include "stdafx.h"#include using namespace std;class InterfaceA{public: InterfaceA(); virtual ~Inte... 阅读全文

posted @ 2014-07-18 23:54 崔好好 阅读(219) 评论(0) 推荐(0)

2014年7月10日

【windows核心编程】一个API拦截的例子

摘要: API拦截修改PE文件导入段中的导入函数地址 为 新的函数地址这涉及PE文件格式中的导入表和IAT,PE文件中每个隐式链接的DLL对应一个IMAGE_IMPORT_DESCRIPTOR描述符结构,而每个IMAGE_IMPORT_DESCRIPTOR结构中的FirstThunk指向一个IMAGE_TH... 阅读全文

posted @ 2014-07-10 03:03 崔好好 阅读(2879) 评论(2) 推荐(0)

2014年6月28日

【设计模式】抽象工厂模式

摘要: 抽象工厂模式/************************************************************************//*设计模式抽象工厂模式抽象工厂模式和工厂方法模式非常相似相同点:一个具体的工厂类对应一个具体的产品类,每个产品类中只有一种具体的产品不同点... 阅读全文

posted @ 2014-06-28 22:52 崔好好 阅读(290) 评论(0) 推荐(0)

2014年6月23日

【windows核心编程】使用远程线程注入DLL

摘要: 前言该技术是指通过在【目标进程】中创建一个【远程线程】来达到注入的目的。创建的【远程线程】函数为LoadLibrary, 线程函数的参数为DLL名字, 想要做的工作在DLL中编写。示意图如下:相关API1、创建远程线程//该函数除了第一个参数为目标进程句柄外//其他参数均和CreateThread一... 阅读全文

posted @ 2014-06-23 21:21 崔好好 阅读(1813) 评论(0) 推荐(0)

2014年6月21日

【设计模式】观察者模式(改进后的)

摘要: 前言之前 观察者模式一篇中,【通知者】需要知道【观察者】的类名和更新函数名,耦合度稍大,本篇稍稍修改一下,类似于大话设计模式里的C#描述的委托事件的方法。采用 将类成员函数指针转换为普通指针 的方式,把每个【观察者】类的 相同原型的更新函数指针转换为std::function然后保存起来。然后在【通... 阅读全文

posted @ 2014-06-21 18:26 崔好好 阅读(402) 评论(0) 推荐(0)

使用std::function 把类成员函数指针转换为普通函数指针

摘要: 前言这是改造前一篇 设计模式的基础,使通知者不必知道观察者的类名和函数名,只需要知道更新函数的原型即可。开发环境:WIN7 32位 + VS2010发现在VS2005中使用std::funtion报错:错误 1 error C2039: “function”: 不是“std”的成员 e:\vspro... 阅读全文

posted @ 2014-06-21 18:04 崔好好 阅读(10271) 评论(0) 推荐(0)

【设计模式】观察者模式

摘要: 观察者模式适用于一个变化会引起其他多个变化引起变化的叫【通知者】,被引起变化的叫【观察者】。从代码实现角度讲,【抽象通知者】需要依赖于【抽象观察者】,至少需要知道抽象观察者的类名和一个【更新函数】名。这个模式的一般实现有点违反【面向接口编程,不要面向实现编程】,而且观察者的更新函数是同一个抽象基类的... 阅读全文

posted @ 2014-06-21 15:21 崔好好 阅读(503) 评论(0) 推荐(0)

2014年6月17日

【windows核心编程】一个HOOK的例子

摘要: 一、应用场景封装一个OCX控件,该控件的作用是来播放一个视频文件,需要在一个进程中放置四个控件实例。 由于控件是提供给别人用的,因此需要考虑很多东西。二、考虑因素1、控件的父窗口resize时需要控件也随之resize 子窗体不能知道父窗口的resize情况,因为父窗口不会主动把这一情况通知子窗口... 阅读全文

posted @ 2014-06-17 20:56 崔好好 阅读(6845) 评论(0) 推荐(0)

2014年6月8日

【windows核心编程】线程局部存储TLS

摘要: 线程局部存储TLS, Thread Local StorageTLS是C/C++运行库的一部分,而非操作系统的一部分。分为动态TSL 和 静态TLS一、动态TLS应用程序通过调用一组4个函数来使用动态TLS, 这些函数实际上最为DLL所使用。系统中的每个进程都有一组 正在使用标志(in-use fl... 阅读全文

posted @ 2014-06-08 14:51 崔好好 阅读(1356) 评论(0) 推荐(0)

2014年6月6日

【设计模式】建造者模式

摘要: 设计模式 之 建造者模式//建造者模式/************************************************************************【建造者】提供了建造动作的接口【具体建造者】去实现【建造者】的每个接口,对每个【具体建造者】来说, 创建【产品】的步... 阅读全文

posted @ 2014-06-06 21:09 崔好好 阅读(259) 评论(0) 推荐(0)

上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页

导航