在开发windows VSS应用程序时 我们应该先下载相关SDK,微软描述如下
When developing your own VSS application, you should observe the following guidelines and restrictions. You may find it helpful to refer to the sample code for VSS requesters, providers, and writers that is provided in the Microsoft Windows Software Development Kit (SDK).
Note The Windows SDK can be used to develop VSS applications only for Windows Vista and later Windows operating system versions. It cannot be used to develop VSS requesters, providers, or writers for Windows Server 2003 R2, Windows Server 2003, or Windows XP.
Windows Server 2003 R2, Windows Server 2003, and Windows XP: VSS is available in the Volume Shadow Copy Service 7.2 SDK, which you can download from http://www.microsoft.com/downloads/details.aspx?FamilyID=0b4f56e4-0ccc-4626-826a-ed2c4c95c871. Note that the 64-bit vssapi.lib files in the directories under the Win2003\Obj directory can be used for the 64-bit versions of Windows Server 2003 R2, Windows Server 2003, and Windows XP. This SDK also provides sample code for VSS requesters, providers, and writers.
Compiling VSS Applications
When developing a requester, such as a backup application:
- Include the following headers:
-
Vss.h
-
VsWriter.h
-
VsBackup.h
- Link the following library:
-
VssApi.Lib
When developing a writer:
- Include the following headers:
-
Vss.h
-
VsWriter.h
Link the following library:
-
VssApi.lib
-
-
还有一些注意事项(就是各种限制,部分内容翻译一下)
-
- All 32-bit VSS applications (requesters, providers, and writers) must run as native 32-bit or 64-bit applications. Running them under WOW64 is not supported.
Windows Server 2003 and Windows XP: Running 32-bit VSS requesters under WOW64 is supported, but not for system-state backups. Running 32-bit VSS providers and writers under WOW64 is not supported. Support for running 32- bit requesters under WOW64 was removed in Windows Vista and subsequent versions.
所有32位vss的应用程序(请求者,提供者,写入者)必须作为原生的32位或64为程序运行。不支持WOW64位下运行。(关于WOW64,就是32bit程序运行在64bit下,是wow64模式)
Windows Server 2003 and Windows XP:可以再WOW64下运行32位vss请求者程序,但不能进行system-state备份。32位的提供者与写入者不能再wow64下运行,并在vista及以后的系统中32位请求者也不能在wow64位下运行了。(总之就是不让你用32位程序在64位下运行了。)
- A shadow copy that was created on Windows Server 2003 R2 or Windows Server 2003 cannot be used on a computer that is running Windows Server 2008 R2 or Windows Server 2008. A shadow copy that was created on Windows Server 2008 R2 or Windows Server 2008 cannot be used on a computer that is running Windows Server 2003. However, a shadow copy that was created on Windows Server 2008 can be used on a computer that is running Windows Server 2008 R2, and vice versa.
- 在windows2003或2003r2下创建的卷映射拷贝不能再windows2008或windows2008r2上运行,相反的情况也是如此(反之亦然)。然而,在windows2008下创建的卷映射拷贝可以再windows2008r2下运行,反之亦然。
- To support shadow copies, a system running VSS must have at least one NTFS file system. This file system will host the shadow copy's "diff area." For more information, see System Provider.
为了支持卷映射拷贝,系统运行vss至少必须运行在NTFS文件系统上。这个文件系统将负责(提供)卷映射拷贝的“差异区间”。了解更多请点击上面的链接。
- Given the presence of one NTFS file system, and given the appropriate choice of context (see Shadow Copy Context Configurations), any supported local file system can be shadow copied.
- You can make shadow copies only for locally mounted file systems. Remote shares and other cross-mounted file systems cannot be shadow copied by the system that mounts them. These file systems can be shadow copied only by the systems that serve out the file systems.
- 你只能在本地文件系统上加载卷映射拷贝服务。远程共享和其他交叉加载的文件系统不能加载卷映射拷贝,文件系统能运行卷映射拷贝仅能通过系统提供的文件系统。
- Writers and requesters should specify only local resources. Local resources are sets of files whose absolute path starts with a drive letter, and the drive letter cannot be associated with a mounted folder on a remote share.
- The maximum number is of software shadow copies for each volume is 512. However, by default you can only maintain 64 shadow copies that are used by the Shadow Copies of Shared Folders feature. To change the limit for the Shadow Copies of Shared Folders feature, use the MaxShadowCopies registry key.
- The Backup Components infrastructure does not support backing up cluster resources as writer components. To back up cluster resources, applications should assume that the path is local to a specified particular cluster node.
-
Note Microsoft does not provide developer or IT professional technical support for implementing online system state restores on Windows (all releases).
When backing up and recovering system state, the recommended strategy is to back up and recover the system and boot volumes in addition to the files enumerated by the system state writers.
Note System state writers are writers that have the
VSS_USAGE_TYPE attribute set to either VSS_UT_BOOTABLESYSTEMSTATE or VSS_UT_SYSTEMSERVICE.
下一篇将提供具体的使用方法。。。