首页

实战经验:CentOS 7.3安装完整开发环境

系统版本: CentOS 7.3(1611) 安装开发环境: 1) 通过group安装 # yum groups mark install “Development Tools” # yum groups mark convert “Development Tools” # yum groupinstall “Development To...

Deleaker专题:记购买Home版Deleaker经历  

在经过14天的Deleaker试用之后,觉得这东西在侦测内存及GDI对象泄漏方面还是挺好用的,于是决定购买。 一. 选择授权模式 Deleaker官方网站(http://www.deleaker.com/)上列出了Deleaker的几种授权模式: 1) Home版 99刀,购买后用于个人开发者使用。 2) Single Developer版 399刀,购买后用于在公司里的单个开发者使用。 3) S...
  • 阅读全文 |
  • 分类:专题 |
  • 发表于:09月28日 |
  • 浏览:969 |
  • 评论已关闭 条评论

Deleaker专题:未调用CloseHandle导致的线程句柄泄漏问题  

多线程应用中常常使用_beginthreadex函数来创建线程,在线程同步中,往往需要等待一个线程执行结束,这时WaitForSingleObject就可以派上用场。今天主要是研究线程句柄资源泄漏的问题。 在本文中,我们主要使用到了资源泄漏检测利器Deleaker。先考察以下示例程序: unsigned _stdcall TestThreadProc(void * param) { Sl...
  • 阅读全文 |
  • 分类:专题 |
  • 发表于:09月24日 |
  • 浏览:1075 |
  • 评论已关闭 条评论

Deleaker专题:记一次GDI对象泄漏经历  

无意间打开任务管理器查看程序GDI对象计数,发现程序每次最小化然后最大化后,GDI对象增1,说明GDI资源存在泄漏。 GDI资源泄漏就像牙疼一样,平时没什么感觉,最后发作的时候,可是要人命的。随着程序长时间运行,GDI资源慢慢泄漏,主要特征为任务管理器中的GDI对象计数不断增加,最后系统不堪重负,程序运行缓慢,直至最后崩溃。 下面开始诊断: 1) 使用GDI资源泄漏工具GDIndicator,打开...
  • 阅读全文 |
  • 分类:专题 |
  • 发表于:09月16日 |
  • 浏览:1323 |
  • 评论已关闭 条评论

参考:TCP/UDP 端口号范围

以下内容来自RFC6335: 一个端口号由一个16位数字表示,范围0~65535。端口号由IANA负责分配,主要分为3大类: 1) 系统端口(Well known port) 系统端口范围:0~1023 系统端口由IANA负责分配。需要走申请流程,申请手续最为严格。 2) 用户端口(Registered port) 用户端口范围:1024~49151 用户端口由IANA负责分配。需要走申请流程,申...
  • 阅读全文 |
  • 分类:参考 |
  • 发表于:09月15日 |
  • 浏览:2965 |
  • 评论已关闭 条评论

参考:Visual Studio 各版本对应关系

Known Name Version Latest KB / Revision Visual Studio 6 6.0 Service Pack 6; 6.0.3790.0; VB6.0-KB290887-X86.exe Visual Studio .NET (2002) 7.0 Service Pack 1; KB837234 Visual Studio 2003 7.1...
  • 阅读全文 |
  • 分类:参考 |
  • 发表于:09月14日 |
  • 浏览:1220 |
  • 评论已关闭 条评论

深度理解:关于WM_SETREDRAW消息的理解

在解决一个界面控件闪烁的问题之后,我对WM_SETREDRAW这一消息有了更深的理解。 此消息的作用: 这个消息的主要作用在于:它允许或者禁止窗口重绘。通常我们不必要通过发送消息的方式使用它,而是使用函数SetRedraw,如果指定参数FALSE,则窗口重绘被禁止,否则,窗口重绘被允许。 那么窗口重绘被禁止是什么意思? 窗口的绘制一般在WM_PAINT消息中处理,如果窗口重绘被禁止,则WM_PAI...

小技巧:解决C4996警告的一种方法

问题: 当我们使用如下的方式调用std::copy函数时: std::copy(pointer1, pointer1 + size, pointer2); 编译期会给出如下的警告: warning C4996: ‘std::_Copy_impl’: Function call with parameters that may be unsafe – this c...

小技巧:解决C4251警告的一种方法

问题: 考虑如下的类: class MYCLASS_API CMyClass { private: std::string m_data; }; 该类为导出类,包含一个STL成员,如果直接导出,则VS2010会发出C4251的警告,例如: warning C4251: ‘XXX’ : class ‘XXX’ needs to have dll-int...
  • 阅读全文 |
  • 分类:小技巧 |
  • 发表于:08月29日 |
  • 浏览:1338 |
  • 评论已关闭 条评论

脚本学习:grep-在一堆文件中查找指定的文本

工作中经常碰到的一个需求场景是:在一堆文件中查找包含特定文本的文件。 以下指令即可解决问题: 示例: 在当前目录下,查找所有.c文件中包含Test字符串的文件 find ./ -name “*.c” | xargs grep -b “Test”