在VS 2005下编译Windows VSS的例子vshadow
文章目录
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)
即可。
文章作者 cookwhy
上次更新 2009-08-11