⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zipreader.h

📁 Zlib压缩库的COM接口
💻 H
字号:
// ZipReader.h : Declaration of the CZipReader

#ifndef __ZIPREADER_H_
#define __ZIPREADER_H_

#include "resource.h"       // main symbols
#include "ziparchive.h"

/////////////////////////////////////////////////////////////////////////////
// CZipReader
class ATL_NO_VTABLE CZipReader : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CZipReader, &CLSID_ZipReader>,
	public IDispatchImpl<IZipReader, &IID_IZipReader, &LIBID_AARONSZIPUTILSLib>
{
public:
	CZipReader()
	{
	}

	~CZipReader()
	{
		if (!m_ZipArchive.IsClosed())
			m_ZipArchive.Close();
	}

	CZipArchive m_ZipArchive;

DECLARE_REGISTRY_RESOURCEID(IDR_ZIPREADER)

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CZipReader)
	COM_INTERFACE_ENTRY(IZipReader)
	COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()

// IZipReader
public:
	STDMETHOD(GetUncompressedSize)(/*[in]*/ long index, /*[out, retval]*/ long* size);
	STDMETHOD(GetCompressedSize)(/*[in]*/ long index, /*[out, retval]*/ long* size);
	STDMETHOD(GetFileLastModified)(/*[in]*/ long index, /*[out, retval]*/ BSTR* lastModified);
	STDMETHOD(GetFileName)(/*[in]*/ long index, /*[out]*/ BSTR* fileName);
	STDMETHOD(GetCount)(/*[out]*/ long* count);
	STDMETHOD(Open)(/*[in]*/ BSTR fileName);
};

#endif //__ZIPREADER_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -