参考: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...
深度理解:关于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...
脚本学习:grep-在一堆文件中查找指定的文本
工作中经常碰到的一个需求场景是:在一堆文件中查找包含特定文本的文件。
以下指令即可解决问题:
示例:
在当前目录下,查找所有.c文件中包含Test字符串的文件
find ./ -name “*.c” | xargs grep -b “Test”
实战经验:权限问题导致的WordPress更新失败
为了防止黑客攻击,通常Web站点根目录的权限需要谨慎的设置,并遵循“最小权限”原则,即仅给予需要正常工作的最小权限,防止权限给的过高带来的安全隐患。
Wordpress更新版本时,需要对其相关目录有写入权限,否则,更新时会出现如下的错误:
copy(xxx.file): failed to open stream: Permission denied in xxx.file.
如何解决?
修改对应...
小技巧:Windows自动更新排错步骤
如果启用了Windows自动更新,但是每次更新都失败,则可以使用如下方法进行排错:
1. 打开事件查看器,选择Windows日志-应用程序,应该可以看到来源为Windows Error Reporting的日志,级别为信息。双击打开该日志详细信息可以找到更新错误的日志文件,例如:C:\Windows\WindowsUpdate.log。这个文件可能会包含之前更新失败的所有内容,建议先清空内容,然后...
错误信息:svn update时出现Checksum mismatch
某日使用SVN更新项目,出现了Checksum mismatch的错误。
解决方法:
1) 启动命令行,CD至出问题文件所在的目录。
2) 执行:svn update –set-depth infinity。
3) 执行过程中会提示其他文件Checksum mismatch的错误,不用理会,继续执行2)的指令。
4) 如果提示文件被lock的情况,使用SVN的Clean up功能,如...
深度理解:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
因为Chorme浏览器的一些提示,我研究了一下Windows下的Cipher suite,特别是Chorme浏览器非常青睐的AES_128_GCM_SHA256加密算法。
首先我们来看看Windows下一个Cipher suite的组成结构,如下图所示:
需要关注的是上图中的Signature部分,如果你的SSL证书是RSA的,则就可以支持RSA的签名算法,如果是ECDSA的证书,则可以支持EC...
小技巧:关于跑步时容易忘记圈数的解决方法
有时我们在跑步时,希望记住当前是在跑第几圈,但是跑着跑着,就会忘记了:刚才是跑第5圈还是第6圈来着?
我经常会碰到这种问题,因为如果跑步的时候思考其他的问题,很容易就会忘记,这样就会出现完不成跑步的圈数目标,多跑了或者少跑了。
在实践中,我发现有一种比较不容易忘记圈数的方法:
比如,计划每次运动的目标是跑10圈,那么在跑每一圈时,使用一个好记的名词来表示当前跑的圈数,比如,当前正在跑第5圈,那么心...


