1Contents of the "windll" subdirectory for UnZip 6.0 and later: 2 3 Contents this file 4 decs.h Exported function declarations. 5 structs.h header file, used by both the DLL and by calling applications, 6 defines the structures used in the DLL interface 7 unziplib.def definition file for 32-bit UnZip library 8 windll16.def definition file for 16-bit UnZip DLL 9 windll32.def definition file for 32-bit UnZip DLL 10 windllgcc.def definition file for 32-bit UnZip DLL, variant for GCC tools 11 windll_lc.def definition file for 32-bit UnZip DLL, variant for LCC tools 12 windll.c contains the entry point for the DLL, "fake" printing, 13 sound, rename, replace and password functions 14 windll.h header file for both 16- and 32-bit DLLs 15 windll.rc resource file for both 16- and 32-bit DLLs 16 windll.txt simplistic explanation of how to use DLL 17 uzexampl.c a very simplistic example of how to load the DLL and make 18 a call into it 19 uzexampl.h header file for uzexampl.c 20 21 guisfx\ directory with GUI frontend for SFX stub 22 dialog.h interface declarations to dialog definition 23 sfxw.ico icon graphic (binary file!) 24 sfxwiz.c main source module for SFX stub 25 sfxwiz.dlg dialog window definitions 26 sfxwiz.rc resourses for GUISFX stub 27 sfxwiz16.mak makefile for 16-bit GUISFX stub (Borland C++ 4.52) 28 unzsfx16.def linker definition file for 16-bit unzipsfx static library 29 30 csharp\ example files for using the Visual C++ DLL with C# under the 31 .NET framework 1.1 32 vb\ example files for using the Visual C++ DLL with Visual Basic 33 34 vc5\dll\ directory with DLL project for Visual C++ 5.0 35 vc5\exampl\ directory with dll usage example project for Visual C++ 5.0 36 vc5\lib\ directory with LIB project for Visual C++ 5.0 37 vc5\sfx\ directory with SFX project files for Visual C++ 5.0 38 SFXWiz32.dsp MS Visual C++ 5.0 project file for 32-bit GUISFX stub 39 SFXWiz32.dsw MS Visual C++ 5.0 workspace file for 32-bit GUISFX stub 40 unzsfx32.dsp MS Visual C++ 5.0 project for 32-bit sfxunzip static lib 41 vc5\ 42 unzip32.dsw MS Visual C++ 5.0 workspace file for all windll projects 43 44 vc6\dll\ directory with DLL project for Visual C++ 6.0 45 vc6\exampl\ directory with dll usage example project for Visual C++ 6.0 46 vc6\lib\ directory with LIB project for Visual C++ 6.0 47 vc6\sfx\ directory with SFX project files for Visual C++ 6.0 48 SFXWiz32.dsp MS Visual C++ 6.0 project file for 32-bit GUISFX stub 49 SFXWiz32.dsw MS Visual C++ 6.0 workspace file for 32-bit GUISFX stub 50 unzsfx32.dsp MS Visual C++ 6.0 project for 32-bit sfxunzip static lib 51 vc6\ 52 unzip32.dsw MS Visual C++ 6.0 workspace file for all windll projects 53 54 vc8\dll\ directory with DLL project for Visual C++ 2005 (VC++ 8.0) 55 vc8\exampl\ directory with dll usage example project for Visual C++ 2005 56 vc8\lib\ directory with LIB project for Visual C++ 2005 (VC++ 8.0) 57 vc8\sfx\ directory with SFX project files for Visual Studio 8 58 SFXWiz32.sln MS Visual C++ 2005 solution file for 32-bit GUISFX stub 59 SFXWiz32.vcproj MS Visual C++ 2005 project file for 32-bit GUISFX stub 60 unzsfx32.vcproj MS Visual C++ 2005 project for 32-bit sfxunzip static lib 61 vc8\ 62 unzip32.sln MS Visual C++ 2005 solution file for all windll projects 63 64 65The source file uzexampl.c contains a short example showing how to call the 66Win32 UnZip DLL from C. This code should work with all C compiler environments 67that allow to build a >>working<< unzip32.dll binary. This has been verified 68with Microsoft Visual C++ (Version 6.0 [1998] and 8.0 [2005]) as well as the 69free MinGW GCC compiler implementation. The example code is a simple 70console application that calls the UnZip dll to extract files from a Zip 71archive. The code assumes that the unzip32.dll binary is available somewhere 72on the execution path. 73 74If you want to build the UnZip DLL, the WinDLL usage example, or the WinGUI SFX 75stub from the command line, you may use the MSC Makefile supplied in the 76subdirectory of the Win32 command line port. 77 78In the default setup, the UnZip DLL is linked against the shared C runtime 79dll. This configuration is most feasible for multi-module C/C++ based 80programs. For usage with non-C projects (e.g. Visual Basic 5/6 or MS .NET 81managed code), a statically linked UnZip DLL might be more appropiate. 82Both the Visual Studio projects and the MSC Makefile in the win32/ subdir 83support statically linked builds through specific configurations (VC projects) 84or a configuration switch (for details look into ../win32/Makefile). 85 86Note that Borland C++ 5.0 is full of bugs; version 4.5 or 5.01 is recommended 87instead. If you must use Borland C++ 5.0, using the Intel optimizing compiler 88is required to avoid crashes (possibly due to a bug in the stat() function in 89the normal Borland compiler). This does have the advantage of giving you a 90smaller code size than the 4.52 compiler. Borland C++ 5.01 has resolved many 91of the problems seen with 5.0 and can be used reliably. 92The UnZip DLL and SFXWiz have been successfully built with Borland C++ 5.5.1 93from the command line. However, we do not currently have the resources to 94supply project files for the Borland IDE environment (C Builder 5.x - 6.x). 95For compilation with Borland C++, please use the appropiate targets supplied 96with the Borland Makefile in the Win32 subdirectory. 97