日记
小狗狗的专栏
假如你懂得在失败后取胜,并同样对待这两种假象,我的儿子,你就可以成为一个人。
展开
-
log
#ifndef COMMAND_DEFINE_H#define COMMAND_DEFINE_H//日志级别的提示信息staticconst char * KEYINFOPREFIX = " Key: \n";staticconst char * ERRORPREFIX = " Error: \n";sta转载 2017-06-05 09:18:15 · 361 阅读 · 0 评论 -
设计模式
单一职责原则(Single Responsibility Principle)定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责转载 2016-04-05 11:07:33 · 473 阅读 · 0 评论 -
注册表
注册表结构 HKEY_LOCAL_MACHINE根键(一) HKEY_LOCAL_MACHIN根键中存放的是用来控制系统和软件的设置。由于这些设置是针对那些使用Windows系统的用户而设置的,所以它与具体用户无关,它是一个公共配置信息,大家只须作一个了解就可以了。 HKEY_LOCAL_MACHINE包括了如下五个子键,如图: HARDWARE子键: 该子键转载 2016-03-22 10:02:25 · 1834 阅读 · 0 评论 -
分区
什么是MBR和主引导引导扇区?什么是主分区、扩展分区、逻辑分区?什么是活动分区、引导分区、系统分区、启动分区?一下子罗列这么多概念,恐怕很多人都搞不清它们的区别和联系吧。网上虽然不少解释,但很多是模棱两可甚至是错误的,反而越弄越糊涂。猫猫煞费苦心的把这一大串概念研究了很长时间,试图搞明白,为了以后查阅方便,于是把对这些概念的理解总结了一下。而要想分清这些概念,真要费一点脑筋啊! 一、MBR转载 2015-08-31 17:00:56 · 382 阅读 · 0 评论 -
vc中调用Com组件的方法详解
需求:1.创建myCom.dll,该COM只有一个组件,两个接口: IGetRes--方法Hello(), IGetResEx--方法HelloEx()2.在工程中导入组件或类型库clip_image001 #import "组件所在目录myCom.dll" no_namespace或clip_image001 #import "类型库所在目录myCom.tlb"转载 2015-08-23 23:35:14 · 463 阅读 · 0 评论 -
用VC进行COM编程所必须掌握的理论知识
一、为什么要用COM 软件工程发展到今天,从一开始的结构化编程,到面向对象编程,再到现在的COM编程,目标只有一个,就是希望软件能象积方块一样是累起来的,是组装起来的,而不是一点点编出来的。结构化编程是函数块的形式,通过把一个软件划分成许多模块,每个模块完成各自不同的功能,尽量做到高内聚低藕合,这已经是一个很好的开始,我们可以把不同的模块分给不同的人去做,然后合到一块,这已经有了组装的概念转载 2015-08-23 23:40:04 · 395 阅读 · 0 评论 -
全文检索学习
觉先博客园首页新随笔联系订阅 管理随笔- 92 文章- 49 评论- 640 Lucene学习总结之一:全文检索的基本原理一、总论根据http://lucene.apache.org/java/docs/index.html定义:Lucene是一个高效的,基于Java的全文检索库。所以在了解Lucene之前要费一番工夫了解一下全文检索。那么什么叫做全文检索呢?这要从我们转载 2015-07-08 13:23:59 · 557 阅读 · 0 评论 -
boost资料
AnIntroduction+to+Boost.chmBeyond+the+C+++Standard+Library(中文版).pdfBeyond_STL An Introduction to Boost中文.chmBoost And STL学习资料 .chmboost graph library.pdfBoost+库+学习指南+.pdfboost-thread.pdfboost_1转载 2015-04-20 22:19:43 · 584 阅读 · 0 评论 -
向依赖关系宣战
一篇依赖倒置,控制反转,依赖注入好文摘自(http://www.contextfree.net) 向依赖关系宣战 依赖倒置、控制反转和依赖注入辨析在《道法自然——面向对象实践指南》一书中,我们采用了一个对转载 2015-04-13 14:31:29 · 423 阅读 · 0 评论 -
这些苦对您很有用
C++著名程序库的比较和学习经验1、C++各大有名库的介绍——C++标准库 2、C++各大有名库的介绍——准标准库Boost 3、C++各大有名库的介绍——GUI 4、C++各大有名库的介绍——网络通信 5、C++各大有名库的介绍——XML 6、C++各大有名库的介绍——科学计算 7、C++各大有名库的介绍——游戏开发 8、C++各大有名库的介绍——线程 9、C++各大有名库的介转载 2015-03-04 10:32:33 · 457 阅读 · 0 评论 -
内存泄漏检测
Visual Leak Detectorvld.codeplex.com/www.codeproject.com/Articles/9815/Visual-Leak-Detector-Enhanced-Memory-Leak-Detectio#include "stdafx.h" #include "vld.h" int main() { int *p = new int原创 2015-01-19 11:46:51 · 394 阅读 · 0 评论 -
VS2010中编译openssl的步骤和使用设置
一.VS2010中编译openssl的步骤版本号:openssl-1.0.1e (之前在VS2010种编译0.98版本的没有通过,但在VS2005中曾经编译成功)1.下载 OpenSSL http://www.openssl.org/,并解压到d:\openssl-1.0.1e目录(也可自己指定路径和目录名称)2.下载 from http://www.activestate转载 2017-02-20 08:29:41 · 539 阅读 · 0 评论 -
__ATTRIBUTE__
GNU C 的一大特色就是__attribute__ 机制。__attribute__ 可以设置函数属性(Function Attribute )、变量属性(Variable Attribute )和类型属性(Type Attribute )。__attribute__ 书写特征是:__attribute__ 前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面是相应的__attribute转载 2017-03-02 09:51:06 · 422 阅读 · 0 评论 -
Linux中的likely()和unlikely()
likely()与unlikely()在2.6内核中,随处可见,那为什么要用它们?它们之间有什么区别呢?首先明确: if (likely(value))等价于if (value) if (unlikely(value))等价于if (value)也就是说likely()和unlikely()从阅读和理解的角度是一样的。这两个宏在内核中定义如下:#de转载 2017-03-02 10:39:33 · 428 阅读 · 0 评论 -
Linux系统安装 OpenSSL两种方法
OpenSSL是一个开源的ssl技术,由于我需要使用php相关功能,需要获取https的文件所以必须安装这个东西了,下面我整理了两种关于OpenSSL安装配置方法。方法一,编译安装 OpenSSL2.1、准备工作系统版本:Ubuntu-10.10-Server-I386更新源:apt-get update升级软件:apt-get upgrade更新系统:apt-转载 2017-03-16 19:46:46 · 11590 阅读 · 0 评论 -
解读DES和SM4、RSA和SM2及SM3
解读DES和SM4、RSA和SM2及SM3 安全是智能卡的核心,而算法是安全的基础。 国密算法由国家密码局发布,包含SM1\ SM2\ SM3\ SM4\ SSF33算法;国际算法由美国的安全局发布,是现今最通用的商用算法。今天小钞就以分组密码算法(DES和SM4)、公钥密码算法(RSA和SM2)、摘要算法(SM3)为例,和大家谈谈国际算法和国密算法转载 2017-03-16 15:24:59 · 4827 阅读 · 0 评论 -
ubuntu12.04下安装openssl
ubuntu12.04下安装openssl1、卸载原来的openssl sudo apt-get remove openssl libssl-dev 2、下载openssl-1.0.1g.tar.gz3、安装openssl: 安装包。(解压目录为OPENSSL) tar –xvf openssl-1.0.1.tar.gz 进入目录OPENSSL转载 2017-04-07 08:04:29 · 2895 阅读 · 0 评论 -
软件反破解的几个思路
1、检测调试寄存器 (1)检测 softice 等系统级调试器 检测softice的方法有很多.检测主要在驱动里中实现。 (2)监测用户级调试器用户级调试器具有一下几个特征: 用户级调试器是采用microsoft提供的dbghelp.dll库来实现对软件跟踪调试的。 被调试的软件其父进程为调试器。 所以可以采用如下的方法来检测:转载 2017-03-10 18:24:28 · 3665 阅读 · 0 评论 -
Linux IP_FORWARD说明
--Linux IP_FORWARD说明ip地址分公有地址和私有地址,public address是由INIC(internet network information center)负责,这些ip地址分配给注册并向INIC提出申请的组织机构。通过它访问internet.private address是属于非注册地址,专门为组织内部使用,private ip address是不可能直接转载 2017-02-27 15:38:25 · 1852 阅读 · 0 评论 -
vs2013编译错误代码锦集
编译器错误 C2001 错误消息 常数中有换行符 字符串常数不能继续到第二行,除非进行下列操作: •用反斜杠结束第一行。 •用一个双引号结束第一行上的字符串,并在下一行用另一个双引号转载 2017-02-27 13:35:34 · 3159 阅读 · 0 评论 -
Computer Security Conference Ranking and Statistic
RankingNote: How to judge how good a conference is? In my opinion, here are several criterias: Acceptance ratio: definitely an important metric (maybe the easiest metric that can be quantif转载 2017-02-23 14:55:45 · 453 阅读 · 0 评论 -
const与define的不同
const与define的最大不同是:const在内存中只有一份、汇编给出的是内存地址;而define有很多份,因为define在立即数中原创 2014-08-13 14:14:02 · 1451 阅读 · 0 评论 -
PE格式详细讲解
PE是英文Portable Executable(可移植的执行体)的缩写,从缩写可以看出它是跨平台的,即使在非intel的CPU上也能正常运行的。它是 Win32环境自身所带的执行体文件格式。其实不光是EXE文件是PE格式,其它的一些重要文件,例如动态链接库文件(DLL),驱动文件(SYS)等也是PE格式的,所以学好PE格式是非常重要的,以下我把这类文件统称为PE文件。学习PE文件结构不仅可以使我转载 2014-07-31 15:42:09 · 799 阅读 · 0 评论 -
webkit研究日记2
使用webkit.dll等库的错误:1)include “webkit.h”webview *sss = new webview();出现错误如下:error C2512: “WebView”: 没有合适的默认构造函数可用2)include “webkit.h” include “webview.h”出现错误如下:e:\webkit-r16原创 2014-03-21 13:39:15 · 1621 阅读 · 0 评论 -
Win7 & VS2013 成功编译 webkit-r-165260 总结
1、 搭建环境:安装win7,必须是sp1版本,建议不要安装非sp1的win7,因为有些win7升级sp1非常麻烦2、 安装以下文件:(如果已经更新,可以不安装,这一步也可以改为更新操作系统) 1) Windows6.1-KB2533623-x86.msu原创 2014-03-18 09:12:56 · 1777 阅读 · 2 评论 -
WebKit参考资料
网络上已经有非常多的WebKit代码介绍. webkit主页 (编译 /移植 / 简单概念) http://www.webkit.org/ webkit小结 ( DOM树 / Render树) http://wenku.baidu.com/view/566e6c8102d276a200292e58.html webkit研究报告 (makefile编译,大体结转载 2014-03-18 14:51:17 · 824 阅读 · 0 评论 -
Webkit的各个模块
本文内容很残缺,有精力了再把自己掌握的内容写出来, 并且加上相关流程图.暂时先这样了. Webkit的各个部分,我自己简单的归纳了一下. 0.程序界面管理. 1.加载网页的总控制器,loader. 2.资源内容的获取和管理 3.html,css文档的解析. 4.html元素,Dom树,CSS样式相关的各个数据结构的创建和维护转载 2014-03-18 14:03:26 · 651 阅读 · 0 评论 -
webkit学习大纲
《webkit入门准备》1. C++a) Webkit代码风格b) Inlinec) Constd) 构造与析构e) 重载f) 继承2. 泛式编程a) Vector/List/HashTableb) Iteratorc)转载 2014-03-18 10:52:11 · 685 阅读 · 0 评论 -
win7 ghost安装教程
win7 ghost安装说明 1.光盘安装(推荐) 安装前准备: 请用刻录软件,选择 映像刻录 方式来刻录ISO文件,刻录之前请先校验一下文件的准确性,刻录速度推荐中速! 请注意备份硬盘上重要资料。 安装前请确认该硬盘是否需要分区,如需要,请参考以下分区方法执行分区操作后进行安装,如不需要,可直接执行安装部分 分区方法: 方法一转载 2014-03-12 16:14:28 · 606 阅读 · 0 评论 -
Win7 & VS2013 编译 WebKit 总结
[转载请注明Moon出品: http://blog.csdn.net/lzl124631x]距离上次编译WebKit(实际日期是2012年10月)已经过去一年多了, 这期间有很多人问我编译相关的问题, 我由于时间关系没有回复这些朋友, 先在这里说声抱歉.这几天我再次编译了一下WebKit, 发现编译它已经要求VS2013了, 而且很多地方都变化了. 再次经过一番尿血的尝试, 终转载 2014-03-13 15:40:34 · 1355 阅读 · 0 评论 -
win7、vs2013编译webkit总结
在windows7、vs2013环境下编译webkit,本人测试成功1、解压cygwin到C盘下(建议放在C盘更目录下,否则编译期间会有部分文件找不到) 启动命令:C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico - 也可以从Cygwin.bat启动(若不是安装在C盘,则启动不了) 【注意】cygwin要用针对web转载 2014-03-08 11:53:06 · 1267 阅读 · 2 评论 -
win7 vs2013 编译错误
错误 3 error U1077: “bash”: 返回代码“0x1” C:\cygwin\home\WebKit-r165115\Source\JavaScriptCore\JavaScriptCore.vcxproj\NMAKEJavaScriptCoreGenerated错误 4 error MSB3073: 命令“%SystemDrive%\cygwin\bin\whi原创 2014-03-07 16:16:09 · 4204 阅读 · 2 评论 -
Web开发者应该了解的WebKit基础知识
对一些开发者而言,WebKit就是一个黑盒子。丢进去HTML、CSS、JS等一连串的东西,而WebKit就能变魔术一般显示出一个很棒的网页出来。实际上,正我的同事IlyaGroriks提到的: WebKit不但是白盒,而且是一个开放的白盒。 让我们花点时间来理解以下这些问题: • 什么是WebKit? • 什么不是WebKit? • 浏览器是如何使用WebKit的?转载 2014-03-03 09:36:46 · 1059 阅读 · 0 评论 -
tcp状态转换图
转载 2014-05-05 13:59:16 · 584 阅读 · 0 评论 -
正则表达式
本文目标30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。如何使用本教程最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :)别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多转载 2014-05-05 13:21:33 · 503 阅读 · 0 评论 -
webkit研究日记3:webkit api使用总结(如何打开webkit组件)
在windows下编译后的webkit dll使用的是com组件技术,所以使用webkit dll中的api传统的方法不行,必须使用com组件技术,如下:/*使用全球唯一标识符(GUID)*/typedef _com_ptr_t> IWebViewPtr; IWebViewPtr gWebView; int main(){ IWebVi原创 2014-03-28 08:54:02 · 1784 阅读 · 0 评论 -
libevent简介和使用
libevent接口的使用是简单容易的、关键还是一些其它技术需要深入了解、如epoll!下面文章来自open经验库:libevent是一个基于事件触发的网络库,memcached底层也是使用libevent库。总体来说,libevent有下面一些特点和优势:* 事件驱动,高性能;* 轻量级,专注于网络; * 跨平台,支持 Windows、Linux、Mac Os等;原创 2014-07-15 22:09:47 · 1136 阅读 · 1 评论 -
几个重要的源代码
几个重要的源代码、有时间可以深入的研究研究!1、Memcached一听名字就是内存方面的东东,计算机重要的研究对象无疑都是内存呀、磁盘等外设呀,所以,这个东东研究研究很有好处。百度百科对她的解释:Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。M原创 2014-07-15 20:03:44 · 1223 阅读 · 1 评论 -
(com组件)普通接口实例
#include using namespace std; #include // Define interface. /* 输出一个字符串*/void trace(const char* pMsg){ cout pMsg endl;} /* IX和IY为普通接口(非COM接口),其实它们是抽象基类*/inte转载 2014-03-26 14:23:32 · 1057 阅读 · 0 评论 -
创建COM组件全过程
一.创建一个接口struct ISimpleMsgBox : public IUnknown{ // IUnknown STDMETHOD_(ULONG, AddRef)() PURE; STDMETHOD_(ULONG, Release)() PURE; STDMETHOD(QueryInterface)(REFIID riid, void** ppv)转载 2014-04-03 15:14:34 · 948 阅读 · 0 评论