Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编译卷影复制服务SDK的一部分vshadow时发生链接器错误 p>我在尝试编译VSS SDK 的C++项目时,会遇到链接错误 Error 1 error LNK2019: unresolved external symbol "long __stdcall ShouldBlockRevert(wchar_t const *,bool *)" (?ShouldBlockRevert@@YGJPB_WPA_N@Z) referenced in function "public: void __thiscall VssClient::RevertToSnapshot(struct _GUID)" (?RevertToSnapshot@VssClient@@QAEXU_GUID@@@Z) revert.obj vshadow_C++_Linker Errors_Volume Shadow Service - Fatal编程技术网

编译卷影复制服务SDK的一部分vshadow时发生链接器错误 p>我在尝试编译VSS SDK 的C++项目时,会遇到链接错误 Error 1 error LNK2019: unresolved external symbol "long __stdcall ShouldBlockRevert(wchar_t const *,bool *)" (?ShouldBlockRevert@@YGJPB_WPA_N@Z) referenced in function "public: void __thiscall VssClient::RevertToSnapshot(struct _GUID)" (?RevertToSnapshot@VssClient@@QAEXU_GUID@@@Z) revert.obj vshadow

编译卷影复制服务SDK的一部分vshadow时发生链接器错误 p>我在尝试编译VSS SDK 的C++项目时,会遇到链接错误 Error 1 error LNK2019: unresolved external symbol "long __stdcall ShouldBlockRevert(wchar_t const *,bool *)" (?ShouldBlockRevert@@YGJPB_WPA_N@Z) referenced in function "public: void __thiscall VssClient::RevertToSnapshot(struct _GUID)" (?RevertToSnapshot@VssClient@@QAEXU_GUID@@@Z) revert.obj vshadow,c++,linker-errors,volume-shadow-service,C++,Linker Errors,Volume Shadow Service,ShouldBlockRevert使用了两次,一次在顶部声明,一次在实际使用时使用 声明如下: HRESULT APIENTRY ShouldBlockRevert(IN LPCWSTR wszVolumeName, OUT bool* pbBlock); 在这里使用: CHECK_COM(::ShouldBlockRevert(Snap.m_pwszOriginalVolumeName, &bBlock)); if (bBlock) { ft.Writ

ShouldBlockRevert使用了两次,一次在顶部声明,一次在实际使用时使用

声明如下:

HRESULT APIENTRY ShouldBlockRevert(IN LPCWSTR wszVolumeName, OUT bool* pbBlock);
在这里使用:

CHECK_COM(::ShouldBlockRevert(Snap.m_pwszOriginalVolumeName, &bBlock));
    if (bBlock)
    {
        ft.WriteLine(L"Revert is disabled on the volume %s because of writers",
                Snap.m_pwszOriginalVolumeName);
        return;
    }
对不起,我对C++不太好。

< P>根据博客文章:

因为我在VSSAPI .LIB上运行了DIPPBO/导出,发现它确实导出了ShouldBlockRevert,但是由于C++名称的限制,被修改的名称不同。为什么不同?因为在vssapi.lib中,ShouldBlockRevert的第一个参数不是wchar\u t,而是unsigned short。“那又怎样”,你在想,“它们是等价的”。我并不反对,但编译器出于名称管理的目的将它们视为不同的类型。有什么办法?那么,在项目属性中禁用C/C++语言属性页中的内在W查尔夫类型(相当于/ZC:WCHARYT-转换),如果你是这个星球上的两个人之一,用MaFage文件构建VisualC++项目的话)。 完成后,LPCWSTR宏被定义为无符号短、名称混乱匹配、行星对齐,并且您可以链接。QED


啊,当我将配置切换到debug xp而不是debug Server时,错误消失了。很可能这些配置在处理wchar_\t的方式上有所不同。您能确认吗?那么您可能没有在调试服务器中使用此功能。