🌓

编译选项的统一管理

当一个solution中的项目越来越多以后,管理编译选项,将成为一件很麻烦的事,单独对每个项目进行设置不仅繁琐,而且容易出错。但实际上,Visual Studio已经为我们提过了统一的管理界面----Property Manager。在visual studio中,每个c++项目的general属性

阅读全文

C++/CLI的用途

作为一个有着正常审美观的人,我简直无法忍受C++/CLI(以及managed c++)的丑陋。不过,近来发现,这个丑东西也还有点用,在把原生开发接口包装成托管开发接口时,比C#的互操作容易的多(互操作看了看,头大呀)。磕磕绊绊几天,终于把一个SDK开发包转换完成了。总结经验如下:1. 对于clr中的

阅读全文

命令行下进行数字签名

网上介绍数字签名的文章,大多使用signtool的signwizard命令实现,这种方式虽说简单,却需要人为干预,不能自动执行。msdn上说signtool的sign命令可以在命令行中完成签名,但描述的相当模糊,试了半天,终于找到了它的使用方法,一共执行四条命令即可,前三条一次性执行,最后生成一个个

阅读全文

_tfopen指定文件编码后程序崩溃

vs05和08的crt增加了一点功能, 使用fopen(_wfopen)时可以指定文件的编码, 但我发现这个功能好像有很多bug, 会导致程序崩溃。我是使用下面的形式打开文件的:TCHAR buf[1024];FILE* fp = _tfopen( _T("a.txt") , _

阅读全文

使用SVN实现版本号自增

在《介绍一下SVN》一文中,我提到了自动递增版本号的功能,现在就来具体说明一下实现方法。虽然标题中说的是“使用SVN”,但我们实际用的是SVN的客户端工具TortoiseSVN中的SubWCRev程序。另外文中的例子也使用了Visual Studio的SVN插件VisualSVN,它并非必须,用了方

阅读全文

设计的载体是什么

也是一篇发在公司内刊上的文章。从参加工作开始,我就一直困惑于如何写设计文档。公司的各种规定和规范看起来很美,但真的执行起来却总让我头痛不已;同时,我也觉得自己喜欢的方式有些自由散漫,满足不了商业化开发的要求。直到前不久,偶然在网上看到了一篇题为《源代码就是设计》的文章后,我终于感觉自己把这个问题想得

阅读全文

extern "C"

原文本以为很简单,仔细阅读了一下 C++ 标准,发现内容还不少。总结了一下。要点:函数类型,函数名,变量名具有语言链接性,language linkage。语言链接性可能会影响到名字以及调用约定等,由实现决定。C++ 默认的语言连接性是 C++ 语言链接性。语言链接性仅作用于函数类型,函数名,变量名

阅读全文

SQLITE中原子提交的实现

原文链接1. 引言像SQLITE这样支持事务的数据库的一个重要特性是“原子提交”。原子提交意味着,一个事务中的所有修改动作要么全都发生,要么一个都不发生。有了原子提交,对一个数据库文件不同部分的多次写操作,就会像瞬间同时完成了一样。当然,现实中的存储器硬件会把写操作串行化,并且写每个扇区都会花上那么

阅读全文

Windows下配置SVN 1.4.5 + APACHE 2.2.6使用域认证

其实在网上搜索这个主题,已经有很多文章了,而且Subversion和TortoiseSVN的文档上也有相关介绍。但在我自己配置的过程中,发现它们好像都不完全对。所以我觉得有必要把自己摸索的过程写出来,供大家参考。不过已经有那么多“前车之鉴”了,我的方法是否真的有用,只能靠老天保佑了。要想配置成功,首

阅读全文

介绍一下Subversion

本来是发在公司内刊上的,现在拿来这里凑个数。前一段时间,公司讨论统一配置管理工具时,我推荐了svn(subversion)。照理说,在公司已经使用了vss、cvs和ClearCase三种工具的情况下,再提一种基本没人用过的新工具不是什么明智的选择。但我确实觉得svn的优点很突出,值得一荐。下面我就对

阅读全文