-
大小: 8.48MB文件類(lèi)型: .zip金幣: 2下載: 0 次發(fā)布日期: 2023-10-14
- 語(yǔ)言: C/C++
- 標(biāo)簽: c++??7z??codeblocks??
資源簡(jiǎn)介
vs2013編譯7z.dll 并移植在codeblocks上編譯調(diào)用成功
里面給出了vs2013的工程文件和codeblocks的工程文件
c++調(diào)用示例

代碼片段和文件信息
//?Client7z.cpp
#include?“StdAfx.h“
#include?
#include?“CPP/Common/MyWindows.h“
#include?“CPP/Common/Defs.h“
#include?“CPP/Common/MyInitGuid.h“
#include?“CPP/Common/IntToString.h“
#include?“CPP/Common/StringConvert.h“
#include?“CPP/Windows/DLL.h“
#include?“CPP/Windows/FileDir.h“
#include?“CPP/Windows/FileFind.h“
#include?“CPP/Windows/FileName.h“
#include?“CPP/Windows/NtCheck.h“
#include?“CPP/Windows/PropVariant.h“
#include?“CPP/Windows/PropVariantConv.h“
#include?“CPP/7zip/Common/FileStreams.h“
#include?“CPP/7zip/Archive/IArchive.h“
#include?“CPP/7zip/IPassword.h“
#include?“C/7zVersion.h“
#include?
#pragma?comment(lib“7z.lib“)
#pragma?comment(lib?“user32.lib“)
#pragma?comment(lib?“oleaut32.lib“)
#ifdef?_WIN32
HINSTANCE?g_hInstance?=?0;
#endif
//?Tou?can?find?the?list?of?all?GUIDs?in?Guid.txt?file.
//?use?another?CLSIDs?if?you?want?to?support?other?formats?(zip?rar?...).
//?{23170F69-40C1-278A-1000-000110070000}
DEFINE_GUID(CLSID_CFormat7z
????????????0x23170F69?0x40C1?0x278A?0x10?0x00?0x00?0x01?0x10?0x07?0x00?0x00);
DEFINE_GUID(CLSID_CFormatXz
????????????0x23170F69?0x40C1?0x278A?0x10?0x00?0x00?0x01?0x10?0x0C?0x00?0x00);
#define?CLSID_Format?CLSID_CFormat7z
//?#define?CLSID_Format?CLSID_CFormatXz
using?namespace?NWindows;
using?namespace?NFile;
using?namespace?NDir;
#define?kDllName?“7z.dll“
static?const?char?*kCopyrightString?=?“\n7-Zip?“?MY_VERSION
??????????????????????????????????????“?(“??kDllName?“?client)?“
??????????????????????????????????????MY_COPYRIGHT?“?“?MY_DATE?“\n“;
static?const?char?*kHelpString?=
????“Usage:?Client7z.exe?[a?|?l?|?x?]?archive.7z?[fileName?...]\n“
????“Examples:\n“
????“??Client7z.exe?a?archive.7z?f1.txt?f2.txt??:?compress?two?files?to?archive.7z\n“
????“??Client7z.exe?l?archive.7z???:?List?contents?of?archive.7z\n“
????“??Client7z.exe?x?archive.7z???:?eXtract?files?from?archive.7z\n“;
static?AString?FStringToConsoleString(const?FString?&s)
{
????return?GetOemString(fs2us(s));
}
static?FString?CmdStringToFString(const?char?*s)
{
????return?us2fs(GetUnicodeString(s));
}
static?void?PrintString(const?UString?&s)
{
????printf(“%s“?(LPCSTR)GetOemString(s));
}
static?void?PrintString(const?AString?&s)
{
????printf(“%s“?(LPCSTR)s);
}
static?void?PrintNewLine()
{
????PrintString(“\n“);
}
static?void?PrintStringLn(const?AString?&s)
{
????PrintString(s);
????PrintNewLine();
}
static?void?PrintError(const?char?*message?const?FString?&name)
{
????printf(“Error:?%s“?(LPCSTR)message);
????PrintNewLine();
????PrintString(FStringToConsoleString(name));
????PrintNewLine();
}
static?void?PrintError(const?AString?&s)
{
????PrintNewLine();
????PrintString(s);
????PrintNewLine();
}
static?HRESULT?IsArchiveItemProp(IInArchive?*archive?UInt32?index?PROPID?propID?bool?&result)
{
????NCOM::CPropVariant?prop;
????RINOK(archive->GetProperty(inde
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????目錄???????????0??2016-11-10?16:34??7z\
?????文件????????2749??2016-11-10?15:43??7z\7z.cbp
?????文件????????5720??2016-11-10?16:31??7z\7z.depend
?????文件????????4703??2016-11-10?16:34??7z\7z.layout
?????文件????????1496??2016-11-10?10:11??7z\7z.lib
?????文件???????98304??2016-11-10?10:11??7z\7zxr.dll
?????目錄???????????0??2016-11-10?12:16??7z\C\
?????文件????????5263??2015-11-18?17:04??7z\C\7z.h
?????文件????????1548??2015-11-09?17:41??7z\C\7zAlloc.c
?????文件?????????403??2015-03-26?00:07??7z\C\7zAlloc.h
?????文件???????45342??2016-05-16?16:17??7z\C\7zArcIn.c
?????文件?????????563??2013-01-24?01:42??7z\C\7zBuf.c
?????文件?????????647??2013-01-18?17:00??7z\C\7zBuf.h
?????文件?????????940??2014-08-22?16:02??7z\C\7zBuf2.c
?????文件????????3213??2015-03-10?17:31??7z\C\7zCrc.c
?????文件?????????637??2013-01-18?17:00??7z\C\7zCrc.h
?????文件????????3441??2015-03-01?15:48??7z\C\7zCrcOpt.c
?????文件???????15734??2015-11-18?19:09??7z\C\7zDec.c
?????文件????????6966??2013-01-24?01:42??7z\C\7zFile.c
?????文件????????1581??2013-01-18?17:00??7z\C\7zFile.h
?????文件????????4188??2013-11-12?13:50??7z\C\7zStream.c
?????文件????????5737??2013-11-12?13:54??7z\C\7zTypes.h
?????文件?????????582??2016-10-04?20:10??7z\C\7zVersion.h
?????文件????????1530??2011-04-19?01:30??7z\C\7zVersion.rc
?????文件????????8639??2016-05-21?16:06??7z\C\Aes.c
?????文件????????1364??2013-01-18?17:00??7z\C\Aes.h
?????文件????????4618??2013-11-12?14:14??7z\C\AesOpt.c
?????文件????????3272??2015-02-21?22:56??7z\C\Alloc.c
?????文件?????????675??2015-02-21?22:56??7z\C\Alloc.h
?????文件????????6177??2015-08-01?12:33??7z\C\Bcj2.c
?????文件????????3287??2014-11-11?01:45??7z\C\Bcj2.h
............此處省略848個(gè)文件信息
評(píng)論
共有 條評(píng)論