5
#include "SplitHandler.h"
5
#include "Common/ComTry.h"
7
6
#include "Common/Defs.h"
7
#include "Common/NewHandler.h"
8
8
#include "Common/StringConvert.h"
9
#include "Common/NewHandler.h"
10
#include "Common/ComTry.h"
10
#include "Windows/PropVariant.h"
12
11
#include "Windows/Time.h"
13
#include "Windows/PropVariant.h"
15
13
#include "../../Common/ProgressUtils.h"
16
#include "../../Compress/Copy/CopyCoder.h"
15
#include "../../Compress/CopyCoder.h"
17
17
#include "../Common/ItemNameUtils.h"
18
18
#include "../Common/MultiStream.h"
20
#include "SplitHandler.h"
20
22
using namespace NWindows;
21
23
using namespace NTime;
23
25
namespace NArchive {
26
STATPROPSTG kProps[] =
28
STATPROPSTG kProps[] =
28
30
{ NULL, kpidPath, VT_BSTR},
29
// { NULL, kpidIsFolder, VT_BOOL},
30
31
{ NULL, kpidSize, VT_UI8},
31
{ NULL, kpidPackedSize, VT_UI8},
32
{ NULL, kpidPackSize, VT_UI8},
34
35
IMP_IInArchive_Props
111
STDMETHODIMP CHandler::Open(IInStream *stream,
112
STDMETHODIMP CHandler::Open(IInStream *stream,
112
113
const UInt64 * /* maxCheckStartPosition */,
113
114
IArchiveOpenCallback *openArchiveCallback)
121
122
CMyComPtr<IArchiveOpenVolumeCallback> openVolumeCallback;
122
123
CMyComPtr<IArchiveOpenCallback> openArchiveCallbackWrap = openArchiveCallback;
123
if (openArchiveCallbackWrap.QueryInterface(IID_IArchiveOpenVolumeCallback,
124
if (openArchiveCallbackWrap.QueryInterface(IID_IArchiveOpenVolumeCallback,
124
125
&openVolumeCallback) != S_OK)
198
199
if (openArchiveCallback != NULL)
200
RINOK(openArchiveCallback->SetTotal(NULL, NULL));
201
201
UInt64 numFiles = _streams.Size();
202
202
RINOK(openArchiveCallback->SetCompleted(&numFiles, NULL));