Win32 SDK 编写截图小工具

摘要: 开发环境为windows xp,vc6主要方案为,创建一个主窗口,不进行截图的时候将其隐藏,并在托盘区创建小图标,截图时使窗口全屏透明,捕捉鼠标行为截图保存,再使窗口隐藏。以下根据主要步骤将核心内容点出:(1)注册窗口类时,将背景色定为黑色,以使截图时有灰暗的效果AT... 阅读全文
posted @ 2012-05-07 09:56 silyvin 阅读(447) 评论(0) 推荐(1)

CreateWindow 与CreateWindowEx

摘要: CreateWindowEx 函数功能:该函数创建一个具有扩展风格的重叠式窗口、弹出式窗口或子窗口,其他与 CreateWindow函数相同。关于创建窗口和其他参数的内容,请参看CreateWindowEx。 函数原型:HWND CreateWindowEx(DW... 阅读全文
posted @ 2012-05-06 21:03 silyvin 阅读(472) 评论(0) 推荐(0)

__cdecl与__stdcall 调用约定在动态链接库调用中不同的表现

摘要: 首先建立__cdecl 调用约定函数的动态链接库。FirstDll.cpp#include BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call,... 阅读全文
posted @ 2012-04-06 19:36 silyvin 阅读(409) 评论(0) 推荐(0)

C 运行时库版本

摘要: http://msdn.microsoft.com/en-us/library/Aa984820The following table lists the release versions of the C run-time library files, along ... 阅读全文
posted @ 2012-04-06 14:36 silyvin 阅读(220) 评论(0) 推荐(0)

dll与lib之间的区别(转)

摘要: 共有两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library。一种是LIB包含函数代码本身,在编译时直接将代码加入程序当中,称为静态链接库static... 阅读全文
posted @ 2012-03-16 11:41 silyvin 阅读(170) 评论(0) 推荐(0)

CView OnDraw中显示位图,并在 resize 时使位图始终显示在客户区左下角

摘要: 首先在 CMainFrame 中定义三个共有成员变量public: HBITMAP m_hLogo; int m_nBmpHeight; int m_nBmpWidth;在构造函数、析构函数中CMainFrame::CMainFrame(){ m_hLogo = (H... 阅读全文
posted @ 2012-03-12 21:58 silyvin 阅读(190) 评论(0) 推荐(0)

extern与static用法

摘要: http://www.cnblogs.com/M-book/archive/2011/10/12/2208734.html在讨论全局变量之前我们先要明白几个基本的概念:1. 编译单元(模块): 在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚... 阅读全文
posted @ 2012-03-01 12:49 silyvin 阅读(171) 评论(0) 推荐(0)

Debug和Release区别

摘要: VC下Debug和Release区别最近写代码过程中,发现 Debug 下运行正常,Release 下就会出现问题,百思不得其解,而Release 下又无法进行调试,于是只能采用printf方式逐步定位到问题所在处,才发现原来是给定的一个数组未初始化,导致后面处理异常... 阅读全文
posted @ 2012-02-25 09:38 silyvin 阅读(252) 评论(0) 推荐(0)

换行符‘\n’和回车符‘\r’

摘要: http://hi.baidu.com/jsj09/blog/item/860fa6fb376e4c9f9e5146a7.html在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打... 阅读全文
posted @ 2012-02-20 10:47 silyvin 阅读(1034) 评论(0) 推荐(0)

再议动态二维数组,通过一句表达式完成矩阵的转置

摘要: 先来回顾一下通常动态二维数组的创建过程,这里以 m×n int数组为例 int **pp=new int*[m]; for(int i=0;i<m;++i) *(pp+i)=new int[n]; //通过*(*(pp+i)+j)操作数组元素(i,j) for(i=... 阅读全文
posted @ 2012-02-03 22:02 silyvin 阅读(161) 评论(0) 推荐(0)