[ZIPFLDR] Initial implementation.
[reactos.git] / dll / shellext / zipfldr / precomp.h
1 #ifndef ZIPFLDR_PRECOMP_H
2 #define ZIPFLDR_PRECOMP_H
3
4 #define COBJMACROS
5 #define COM_NO_WINDOWS_H
6 #define NTOS_MODE_USER
7
8 #include <windef.h>
9 #include <winbase.h>
10 #include <shlobj.h>
11 #include <atlbase.h>
12 #include <atlcom.h>
13 #include <atlcoll.h>
14 #include <atlstr.h>
15 #include <rosdlgs.h>
16 #include <shlwapi.h>
17 #include <shellapi.h>
18 #include <strsafe.h>
19 // debug.h needs this:
20 #define NTSTATUS LONG
21 #include <reactos/debug.h>
22 #include <shellutils.h>
23
24
25
26 #define EXTRACT_VERBA "extract"
27 #define EXTRACT_VERBW L"extract"
28
29 EXTERN_C const GUID CLSID_ZipFolderStorageHandler;
30 EXTERN_C const GUID CLSID_ZipFolderSendTo;
31 EXTERN_C const GUID CLSID_ZipFolderContextMenu;
32 EXTERN_C const GUID CLSID_ZipFolderRightDragHandler;
33 EXTERN_C const GUID CLSID_ZipFolderDropHandler;
34
35 EXTERN_C const GUID CLSID_ZipFolderExtractAllCommand;
36
37 extern LONG g_ModuleRefCnt;
38
39
40 #define Win32DbgPrint(file, line, warn, func) DbgPrint("(%s:%d) " warn, file, line, func)
41 WCHAR* guid2string(REFCLSID iid);
42
43
44 #include "minizip/unzip.h"
45 #include "minizip/ioapi.h"
46
47 extern zlib_filefunc64_def g_FFunc;
48
49 #include "resource.h"
50
51 #include "zippidl.hpp"
52 #include "IZip.hpp"
53
54 HRESULT _CEnumZipContents_CreateInstance(IZip* zip, DWORD flags, const char* prefix, REFIID riid, LPVOID * ppvOut);
55 HRESULT _CExplorerCommandProvider_CreateInstance(IContextMenu* zipObject, REFIID riid, LPVOID * ppvOut);
56 HRESULT _CFolderViewCB_CreateInstance(REFIID riid, LPVOID * ppvOut);
57 void _CZipExtract_runWizard(PCWSTR Filename);
58
59 #include "CZipEnumerator.hpp"
60 #include "CZipFolder.hpp"
61
62 #endif /* ZIPFLDR_PRECOMP_H */