Windows的VSS是指给磁盘打快照的服务,可以方便实施热备份等,MSDN里的相关文档有着详细地介绍。

下载VSS SDK包,这个安装包的安装路径默认为:

C:\Program Files\Microsoft\VSSSDK72\

当然,如果你的VSS版本号不太一样的话,路径会有所区别。

SDK自带了几个例子,对我们熟悉VSS非常有帮助,放在SDK安装路径下的TestApps目录,如果为默认安装,则是:

C:\Program Files\Microsoft\VSSSDK72\TestApps

不过我在Visual Studio 2005里编译vshadow这个例子工程时,编译器提示类似如下错误:

error C4430: missing type specifier – int assumed. Note: C++ does not support default-int e:\watercode\vsssamplecode\testapps\vshadow\src\shadow.cpp 30

这是因为VS 2005的C++编译器严格地检查函数的返回值,无返回值函数的返回值不再默认为整数,因此,可以修改main函数的定义,使之返回一个整数值来解决这个编译问题:

把shadow.cpp文件里的主函数

extern “C” __cdecl wmain(int argc, WCHAR ** argv)

根据需要改为类似于

int wmain(int argc, WCHAR ** argv)

即可。