【发布时间】:2015-06-20 00:35:52
【问题描述】:
我尝试安装 Windows 卷影复制 SDK 但是当我看到这个链接时它只支持 windows 2003 和 xp http://www.microsoft.com/en-us/download/details.aspx?id=23490
我试图强制安装以查看会发生什么,我使用 msvc 2010 开发它,它给我错误,每当我放
#include "vswriter.h"
它给了我很多错误
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(117): error
C2504: 'IUnknown' : base class undefined
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120): error C2061: syntax error : identifier 'GetPath'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120): error C2061: syntax error : identifier 'OUT'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120): error C2091: function returns function
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120): warning C4183: 'STDMETHOD': missing return type; assumed to be a member function returning 'int'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(123): error C2061: syntax error : identifier 'GetFilespec'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(123): error C2061: syntax error : identifier 'OUT'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(123): error C2091: function returns function
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(123): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(123): error C2535: 'int (__cdecl *IVssWMFiledesc::STDMETHOD(void))(void)' : member function already defined or declared
1> c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120) : see declaration of 'IVssWMFiledesc::STDMETHOD'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(123): warning C4183: 'STDMETHOD': missing return type; assumed to be a member function returning 'int'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(126): error C2061: syntax error : identifier 'GetRecursive'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(126): error C2061: syntax error : identifier 'OUT'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(126): error C2091: function returns function
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(126): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(126): error C2535: 'int (__cdecl *IVssWMFiledesc::STDMETHOD(void))(void)' : member function already defined or declared
1> c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120) : see declaration of 'IVssWMFiledesc::STDMETHOD'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(126): warning C4183: 'STDMETHOD': missing return type; assumed to be a member function returning 'int'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(129): error C2061: syntax error : identifier 'GetAlternateLocation'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(129): error C2061: syntax error : identifier 'OUT'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(129): error C2091: function returns function
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(129): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(129): error C2535: 'int (__cdecl *IVssWMFiledesc::STDMETHOD(void))(void)' : member function already defined or declared
1> c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120) : see declaration of 'IVssWMFiledesc::STDMETHOD'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(129): warning C4183: 'STDMETHOD': missing return type; assumed to be a member function returning 'int'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(120): error C2253: 'IVssWMFiledesc::STDMETHOD' : pure specifier or abstract override specifier only allowed on virtual function
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(135): error C2504: 'IUnknown' : base class undefined
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(138): error C2061: syntax error : identifier 'GetLogicalPath'
1>c:\program files (x86)\microsoft\vsssdk72\inc\winxp\vswriter.h(138): error C2061: syntax error : identifier 'OUT'
1>c:\pr
这是否意味着 win8 不支持 vshadow SDK?还是停产了?还是我安装错了?
【问题讨论】:
-
IUnknown错误意味着您在#include此文件之前缺少基本 COM 标头。使用 Win32 API,它应该是in the base SDK,所以如果你有更新的 SDK,那么你应该不需要下载这个包 -
在哪里可以获得更新的 SDK?你的意思是windows SDK?还是 microsoft visual studio for C++ 中的 API 环境?
-
是的,Windows Win32 SDK。从Download Microsoft Windows SDK 链接下载它,该链接位于我在之前评论中链接的页面上。
-
你能尝试加载这个 VS2012 解决方案并查看它是否构建吗?如果是这样,那么此示例中#includes 的项目设置/正确顺序可以为您提供帮助。 code.msdn.microsoft.com/windowsdesktop/…
标签: c++ shadow-copy