Visual c++ Can';不要让libzippvc++;64位
我正在寻找Zip库,而libzippp看起来正是我想要的,所以我正在尝试小POC控制台应用程序。Visual c++ Can';不要让libzippvc++;64位,visual-c++,unzip,zipfile,Visual C++,Unzip,Zipfile,我正在寻找Zip库,而libzippp看起来正是我想要的,所以我正在尝试小POC控制台应用程序。 这是第一个,在x86中可以正常工作,但当我尝试在x64中编译时,会得到“未解析的外部readAsText”。 我使用vcpkg获取库 vcpkg安装libzippp vcpkg安装libzippp:x64 Windows 错误LNK2019未解析的外部符号“public:class std::basic_string\u cdecl libzippp::ZipEntry::readAsText(枚举
这是第一个,在x86中可以正常工作,但当我尝试在x64中编译时,会得到“未解析的外部readAsText”。
我使用vcpkg获取库
vcpkg安装libzippp
vcpkg安装libzippp:x64 Windows 错误LNK2019未解析的外部符号“public:class std::basic_string\u cdecl libzippp::ZipEntry::readAsText(枚举libzippp::ZipArchive::State,无符号长)const”(?readAsText@ZipEntry@libzippp@@QEBA?AV?$basic_string@DU?$char_traits@D@性病病毒$allocator@D@2@@std@@W4State@ZipArchive@2@K@Z)在函数main Zip6 D:\rcodeNET\Dev\Zip6\Zip6.obj 1中引用
#包括
#包括“libzippp\libzippp.h”
使用名称空间std;
使用名称空间libzippp;
int main()
{
ZipArchive zf(“d:\\1zip\\Gender.zcd”);
bool ok=zf.open(ZipArchive::ReadOnly);
vector entries=zf.getEntries();
紫丁香;
对于(int i=0;i std::这能回答你的问题吗?不太可能,有点太笼统了。不过我有另一个线索。上面的错误消息给出了完整的名称(我想这就是它)它正在寻找的是:?readAsText@ZipEntry@libzippp@@QEBA?AV?$basic_string@DU?$char_traits@D@性病病毒$allocator@D@2@@std@@W4State@ZipArchive@2@K@Z,库将函数导出为?readAsText@ZipEntry@libzippp@@QEBA?AV?$basic_string@DU?$char_traits@D@性病病毒$allocator@D@2@@std@@W4State@ZipArchive@2@_K@有一个查拉字符在最后几个字符中不同:错误消息结束@K@Zlib导出结束@_K@Z
#include <iostream>
#include "libzippp\libzippp.h"
using namespace std;
using namespace libzippp;
int main()
{
ZipArchive zf("d:\\1zip\\Gender.zcd");
bool ok = zf.open(ZipArchive::ReadOnly);
vector<ZipEntry> entries = zf.getEntries();
ZipEntry ze;
for (int i = 0; i < entries.size(); i++)
{
ze = entries[i];
string name = ze.getName();
int size = ze.getSize();
std::cout << name << "=" << size << "\n";
string textData = ze.readAsText();
std::cout << "text " << textData << "\n";
}
}