12 freelancer_ex

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 22w+

个人站点

个人站点:www.sylar.site

2017-11-08 06:35:52

Imperfect C++ 编译期约束 must_have_base

《Imperfect C++》中的一个约束的例子,must_have_base,程序清单如下:    template         struct must_have_base        {             ~must_have_base()            {                void(*p)(D*,B*) = constraints;

2013-05-23 17:02:46

ACE实践笔记(一)

最近使用ACE完成了一个视频转发服务器,这算是用ACE完成的第一个完整的程序,总结总结经验。这个程序主要功能就是接收客户指令,连接指定设备,获取视频流,然后再传输给客户。最初的想法是能够尽量多的负载视频路数,同时尽可能迅速的给客户响应。这里使用了异步的Proactor框架,这个Proactor线程里面,负责接收连接,以及收到命令后做验证后,加入Task队列。命令处理部分使用了Tas

2012-09-25 19:04:09

一个API拦截的例子

闲来无事,做一个API拦截的简单程序,目标是拦截exploer.exe的CreateProcess.当打开桌面程序时,执行自定义的代码。首先需要确认的是,explorer.exe创建进程是用了什么函数,创建进程自然想到用CreateProcess(CreateProcessA,CreateProcessW).这里我拦截的是CreateProcessW。执行以下命令:dumpbin

2012-09-05 07:58:23

ACE学习笔记(三)

一边看《C++网络编程卷2》的ACE_Task一边做点笔记。书上提到了个Active Object模式。ACE_Task启动了一组线程,它们共用一个线程函数,而在这个线程函数里,调用了ACE_Task::svc().代码很容易理解。网上找了个Active Object的定义:1、构造一个命令(实现Command模式的一个命令)ACE中就是一个ACE_Message_Block2、将该命

2012-08-15 15:58:46

资源:ace6.0和xmlrpc++0.7

ace6.0是ace新版。已经上传。        http://download.csdn.net/detail/dajjnan/4498655ACE书上给了2个下载地址,不过第一个貌似不能用了,可以去另一个下载:http://www.riverace.com/downloads.htmxmlrpc++是rpc的一种xml实现,用于异构平台,可以去sourceforge下

2012-08-14 13:24:47

ACE学习笔记(二)

今天又把ACE的整编和解编看了看,看看ACE_OutputCDR和ACE_InputCDR都做了什么,我就想知道两点,一是它内部的数据时怎么保存的,二是它在什么地方用到了hton*和ntoh*函数。 我只看了write_2和read_2函数,这2个比较有代表性。首先它内部数据都保存在了ACE_Message_Block中,对ACE_OutputCDR::write_2,我没有定义ACE_E

2012-08-09 16:34:07

一个实现了iterator模式的简单模板类

最近的代码常常需要把将数据保存在容器里,譬如对应一个数据库表的内存类。为此写了一个简单的模板类,依靠容器实现了iterator模式。template class TObjects{public:typedef _container_type container_type;  DECLARE_ITERATOR(typename container_type);NO_

2012-07-27 13:07:14

两个自定义宏

空闲时写了一些基本代码,方便日后使用,这里列了两个。一个给类加了点信息,一个实现了一个简单的iterator模式。1、有时候会想知道一个class的类名和类型,通过这个宏可以获得。#define DECLARE_CLASS(_class_type) \public:: \typedef _class_type class_type;\static const TCHAR

2012-07-17 19:56:15

IID_IBaseFilter的定义

昨天同事发现IID_IBaseFilter在directshow的Sdk中并没有赋值,而许多其他IID都可以找到DEFINE_GUID宏的定义(如在Include文件夹下的control.h),于是就花了点时间找了找。开始想到一种可能性是IID_IBaseFilter是由IBaseFilter通过宏生成,型如:#define GEN_IID(_F) IID_##_F于是又开始找IID_

2012-07-17 18:52:25

ACE学习笔记(一)

一、ACE_CDR::void mb_align (ACE_Message_Block *mb);{char * const start = ACE_ptr_align_binary (mb->base (),                                             ACE_CDR::MAX_ALIGNMENT);  mb->rd_ptr (star

2012-05-11 15:32:04

windows下ffmpeg编译

今天花了一天时间在编译上,主要是编译出来的dll调用会抛异常(0xc0000005).首先下载新版ffmpeg,http://ffmpeg.mplayerhq.hu/,我下载的版本为0.8.11。编译的环境主要是msys + mingw。这里有个配置好的http://code.google.com/p/msys-cn/wiki/ChapterInstallation。不过其gcc编译出来的

2012-05-02 18:07:21

vc和bcb中的stl/boost版本

最初的想法是将vc和其他编译器写出来的东西可以二进制级别的复用,做成COM调用起来麻烦,而基本类型pod也不方便,就想统一一下不同编译器中的stl版本。拿vc9和bcb6来说,因为stl版本不同,容器的大小和实现都不一样,如果dll的头文件中有stl的东西,生成的dll便不能通用。因为bcb6中的stl是stlport,版本好像是4.5.于是找来了stlport从4.0到最新版的5.21,

2012-04-04 10:50:45
勋章 我的勋章
    暂无奖章