~ubuntu-branches/ubuntu/lucid/unzip/lucid-security

« back to all changes in this revision

Viewing changes to windll/csharp/ReadMeCS.txt

  • Committer: Bazaar Package Importer
  • Author(s): Santiago Vila
  • Date: 2009-05-08 20:02:40 UTC
  • mfrom: (1.1.2 upstream)
  • mto: This revision was merged to the branch mainline in revision 18.
  • Revision ID: james.westby@ubuntu.com-20090508200240-7l4gypruop5863bd
* New upstream release. Closes: #496989.
* Enabled new Unicode support. Closes: #197427. This may or may not work
  for your already created zipfiles, but it's not a bug unless they were
  created using the Unicode feature present in zip 3.0.
* Built using DATE_FORMAT=DF_YMD so that unzip -l show dates in ISO format,
  as that's the only available one which makes sense. Closes: #312886.
* Enabled new bzip2 support. Closes: #426798.
* Exit code for zipgrep should now be the right one. Closes: #441997.
* The reason why a file may not be created is now shown. Closes: #478791.
* Summary of changes in this version not being the debian/* files:
- Manpages in section 1, not 1L.
- Branding patch. UnZip by Debian. Original by Info-ZIP.
- Always #include <unistd.h>. Debian GNU/kFreeBSD needs it.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
On Windows open this file in WordPad.
 
2
 
 
3
Contents of the "windll/csharp" sub-archive
 
4
 
 
5
This directory contains Visual C Sharp (C#) sample project for
 
6
using the unzip32.dll library.  This project was generously donated
 
7
by Adrian Maull.  The Zip source archive contains a corresponding
 
8
project for using the zip32.dll library.
 
9
 
 
10
These sample projects are distributed as part of the Info-ZIP distribution
 
11
under the Info-ZIP license.
 
12
 
 
13
Note that the files may be saved in "UNIX LF" format with carriage returns
 
14
stripped.  These may need to be restored before the project can be successfully
 
15
used.
 
16
 
 
17
The project is based on .NET Framework 1.1.  It was contributed
 
18
to the Info-Zip project April 2005.  If you have questions or comments,
 
19
contact us at www.Info-ZIP.org or for specific questions about these
 
20
projects contact Adrian Maull directly at adrian.maull@sprintpcs.com.
 
21
 
 
22
See UnZip.cs for more detailed information about the project.  Currently
 
23
the sample project has some bugs as noted in the above file.
 
24
 
 
25
The original code has been adapted to the modified WinDLL interface of
 
26
UnZip 6, using Visual C# 2005 (.Net Framework 2.0) and a unzip32.dll compiled
 
27
by Visual C++ 6.0.  The provided project file is still in the format for
 
28
Visual Studio 7.1 (VS .Net 2003, .Net 1.1).  But the code of the project
 
29
can be used with newer Visual Studio versions (2005 = 8.0 or 2008 = 9.0);
 
30
only the project file gets (irreversibly) converted to the newer Visual
 
31
Studio format when first opened.
 
32
 
 
33
However, this project is not tested throughoutly by us at this time.
 
34
 
 
35
Note on using Visual Studio C# 2005, 2008 (or newer?):
 
36
The UnZip maintainer was unsuccessful to run the C# sample code using
 
37
Visual Studio 2005 or 2008 together with an unzip32.dll compiled with
 
38
the same Visual Studio version in default configuration (unzip32.dll linked
 
39
against the DLL version of the C runtime library).  The C# program failed
 
40
to load the unzip32.dll because of an "OS loader lock" conflict. This conflict
 
41
should only show up when loading "mixed mode" dll that contain both managed
 
42
and unmanaged code.  So, it cannot be caused by the "pure native code"
 
43
unzip32.dll directly, which contains nothing dangerous in its DLLMain()
 
44
function.  It seems to be caused by the new "side-by-side" C runtime dlls
 
45
(msvcr80.dll or msvcr90.dll being loaded multiple times by a .NET application
 
46
that uses msvcr??-linked native dlls).
 
47
To fix this issue, one of the following work-arounds could be used:
 
48
a) use an unzip32.dll that was linked against the system msvcrt.dll (the
 
49
   "old" MSVC 6.0 runtime) that is a core system component of all Windows
 
50
   versions from Windows 98/Windows ME and Windows 2000 and newer (at least
 
51
   up to Windows Vista/Windows Server 2008),
 
52
or
 
53
b) use a statically linked variant of unzip32.dll (see the option DLLSTANDALONE
 
54
   in the MSC Makefile for Win32 executables, "win32/Makefile").
 
55
 
 
56
Ed Gordon, Christian Spieler
 
57
2009/01/17