自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Welcom to zougangx's blog

坚持...积累... 编程是一门技术,更加是一门艺术

  • 博客(14)
  • 资源 (3)
  • 收藏
  • 关注

原创 CppUnitLite使用详解

一直想给现在的项目做C++的单元测试,而且也想看看一个单元测试框架的实现。无意中发现了CppUnitLite,CppUnit的轻量级, 确实简单易用。一. 下载及目录结构下载地址:(http://download.csdn.net/source/304011), 下载后目录结构如下:/om   /CppUnitLite       /Failure.cpp       /Failure.h   

2009-05-26 22:25:00 2578 1

原创 使用 MOCK 对象进行单元测试的实例讲解

1.出了什么问题? 单元测试的目标是一次只验证一个方法,小步的前进,细粒度的测试,但是假如某个方法依赖于其他一些难以操控的东东,比如说网络连接,数据库连接,或者是Servlet容器,那么我们该怎么办呢? 要是你的测试依赖于系统的其他部分,甚至是系统的多个其他部分呢?在这种情况下,倘若不小心,你最终可能会发现自己几乎初始化了系统的每个组件,而这只是为了给一个测试创造足够的运行环境让它们可

2009-05-26 21:54:00 521

转载 水晶报表在VC++6.0中的简单使用方法

水晶报表是一个报表设计开发的强大工具,功能强大,设计灵活,在水晶报表光盘中只提供了一个完全动态生成报表的例子,使用繁琐。现介绍其在VC++6.0中的简单使用方法。编译环境:VC++6.0 sp5 、Windows 2000 Server sp3 (en)。一、导入水晶报表使用的动态联接库:根据实际修改文件路径。#import "C:Documents and SettingsAdministrat

2009-05-24 00:19:00 707

原创 SQLite 数据库加密的一种解决方案

2009-05-22 21:05:00 837

原创 1069错误(由于登录失败而无法启动服务)解决方法

  原因很简单,安装SQL Server时是使用默认登录用户来作为启动SQL Server服务的账号(对于自己使用的单机,通常就是administrator了),当该用户更改了用户名(如有人喜欢把administrator改成admin)或更改了其口令时,再次启动服务器,就出现“同于登录失败而无法启动服务”的错误了  知道了原因,解决方法也就很显然了  1,把用户口令改回原来的,再启动服务  2,

2009-05-22 20:18:00 1885

转载 析构函数中抛异常

 1: 可以在析构函数中抛异常吗?        不可以!        虽然语法上并没错,但会对整体系统带来重大隐患!! 2: 那么如何保证析构不抛异常呢?       2.1)析构里如同构造函数一样,做一些简单的操作。       2.2)如果异常不可避免,那么直接在析构里捕获异常,不要让异常逃离析构函数! 3: 析构里抛异常有什么危害呢?       阻止异常传递到析构函数外有两个原因,

2009-05-21 23:29:00 417

转载 什么是重构

      重构(Refactoring)就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。  也许有人会问,为什么不在项目开始时多花些时间把设计做好,而要以后花时间来重构呢?要知道一个完美得可以预见未来任何变化的设计,或一个灵活得可以容纳任何扩展的设计是不存在的。系统设计人员对即将着手的项目往往只能从大方向予以

2009-05-21 23:17:00 747

转载 架构师是这样炼成的

 随着软件行业的发展,软件人才也在不断地细分。以前,他们被统称为软件开发工程师。而现在,系统分析员、配置管理员、测试工程师,新兴的岗位名称不断出现。其中,软件架构师这一角色的重要开始日益凸显。    对于每一个软件开发人员,架构师都是一个令人向往的角色,它是能力与高薪的代名词。就连软件行业的传奇比尔盖茨在2000年卸任公司CEO时,也担任了微软公司的荣誉角色“首席软件架构师”,可见“架构师

2009-05-19 23:05:00 417

转载 软件架构师应该具备的素质

 软件架构师应该具备的素质作者 Abel Avram 译者 王丽娟 发布于 2009年1月22日 上午1时37分社区 Architecture 主题 协作, 领导能力, 团队工作, 企业架构 标签 管理软件/企业架构师是一项很重要的工作。架构师的职责很多,要胜任的话,需要具备特定的领导、沟通、技术技能。Gabriel Morgan在最近的一篇帖子里从Daniel Goleman

2009-05-19 22:54:00 478

转载 SQLite在VC下的使用

 一、SQLite简介SQLite 是用C语言编写的开源数据库,主要用于嵌入式,你也可以把它集成在自己的桌面程序中,也有人将其替代Access,用作后台数据库。SQLite 支持多数SQL92标准,例如:索引、限制、触发和查看支持。支持 NULL、INTEGER、REAL、TEXT 和 BLOB 数据类型,支持事务。二、下载SQLiteSQLite可以到官方站点下载http://w

2009-05-19 22:44:00 584

转载 Internal ShellExecute

Q: 如何打开一个应用程序? ShellExecute(this->m_hWnd,"open","calc.exe","","", SW_SHOW );或 ShellExecute(this->m_hWnd,"open","notepad.exe", "c://MyLog.log","",SW_SHOW );正如您所看到的,我并没有传递程序的完整路径。Q: 如何打开一

2009-05-13 23:04:00 374

转载 SAFEARRAY使用实例

... 7前言:SAFEARRAY使用总是困扰很多人,为了把这个问题说个明白,我把我目前掌握的知识做个总结 何谓SAFEARRAY:SAFEARRAY实际上是一个结构,关于这部分可以参考MSDN。ms-help://MS.MSDNQTR.2003FEB.2052/automat/htm/chap7_9ntx.htm我们不需要关心16位操作系统下的定义,因为我们团

2009-05-10 22:35:00 405

原创 #Pragma Para

在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。    其格式一般为: #Pragma Para    其中Para 为参数,下面来看一些常

2009-05-10 22:10:00 382

转载 透明位图原理及代码

(半) 透明位图原理及代码 摘自http://www.bc99.cn/Article/ASPX/2007-3-27-cs/65D5KI8EJFGK.html>> 绘制半透明位图 有的时侯,我们希望显示一幅半透明的位图。也就是说我们将一幅位图B显示到A位图上,又希望透过B位图看到A位图的一部分图像但不是全部。比如A位图是一幅曲线图,B是一幅提示位图,我们想在显示提示的同时看到已显示的曲线

2009-05-06 23:33:00 751

MySQL-python-1.2.5.win-amd64-py2.7

python2.7 独立安装mysql工具包,不需要本地编译环境。

2015-12-28

端口扫描器L-ScanPort2.0源码(VC)

一个端口扫描软件,VC编写的,方便快速,附上源码,大家共同交流!!

2014-02-17

Firefox插件开发Demo

Firefox插件Demo #include "npapi.h" #include "npruntime.h" typedef int int16; class CPlugin { private: NPP m_pNPInstance; #ifdef XP_WIN HWND m_hWnd; #endif NPWindow * m_Window; NPStream * m_pNPStream; NPBool m_bInitialized; NPObject *m_pScriptableObject; public: char m_String[128]; public: CPlugin(NPP pNPInstance); ~CPlugin(); NPBool init(NPWindow* pNPWindow); void shut(); NPBool isInitialized(); int16 handleEvent(void* event); void showVersion(); void clear(); void getVersion(char* *aVersion); NPObject *GetScriptableObject(); }; #endif // __PLUGIN_H__

2010-05-28

空空如也

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

TA关注的人

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