1 /* 2 * PROJECT: ReactOS Zip Shell Extension 3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) 4 * PURPOSE: zip pidl handling 5 * COPYRIGHT: Copyright 2017 Mark Jansen (mark.jansen@reactos.org) 6 * Copyright 2023 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com) 7 */ 8 9 10 enum ZipPidlType 11 { 12 ZIP_PIDL_DIRECTORY, 13 ZIP_PIDL_FILE 14 }; 15 16 #include <pshpack1.h> 17 struct ZipPidlEntry 18 { 19 WORD cb; // This must be a WORD to keep compatibility to SHITEMID 20 BYTE MagicType; 21 BOOLEAN Password; 22 ZipPidlType ZipType; 23 24 ULONG64 CompressedSize; 25 ULONG64 UncompressedSize; 26 ULONG DosDate; 27 28 WCHAR Name[1]; 29 }; 30 #include <poppack.h> 31 32 33 LPITEMIDLIST _ILCreate(ZipPidlType Type, PCWSTR lpString, unz_file_info64& info); 34 const ZipPidlEntry* _ZipFromIL(LPCITEMIDLIST pidl); 35