mirror of
https://github.com/pocoproject/poco.git
synced 2025-02-20 22:31:23 +01:00
Zip: complete merge to 1.4.2
This commit is contained in:
parent
7e5c3a13d6
commit
9b3117e6c5
60
Zip/Zip_vs100.sln
Normal file
60
Zip/Zip_vs100.sln
Normal file
@ -0,0 +1,60 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Zip", "Zip_vs100.vcxproj", "{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestSuite", "testsuite\TestSuite_vs100.vcxproj", "{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61} = {4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
debug_shared|Win32 = debug_shared|Win32
|
||||
release_shared|Win32 = release_shared|Win32
|
||||
debug_static_mt|Win32 = debug_static_mt|Win32
|
||||
release_static_mt|Win32 = release_static_mt|Win32
|
||||
debug_static_md|Win32 = debug_static_md|Win32
|
||||
release_static_md|Win32 = release_static_md|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_shared|Win32.Build.0 = debug_shared|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_shared|Win32.ActiveCfg = release_shared|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_shared|Win32.Build.0 = release_shared|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_shared|Win32.Deploy.0 = release_shared|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_md|Win32.Build.0 = release_static_md|Win32
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_shared|Win32.Build.0 = debug_shared|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_shared|Win32.ActiveCfg = release_shared|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_shared|Win32.Build.0 = release_shared|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_shared|Win32.Deploy.0 = release_shared|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_md|Win32.Build.0 = release_static_md|Win32
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
320
Zip/Zip_vs100.vcxproj
Normal file
320
Zip/Zip_vs100.vcxproj
Normal file
@ -0,0 +1,320 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|Win32">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|Win32">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|Win32">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|Win32">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|Win32">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|Win32">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>Zip</ProjectName>
|
||||
<ProjectGuid>{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}</ProjectGuid>
|
||||
<RootNamespace>Zip</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">..\bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">..\bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">..\lib\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">..\lib\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">..\lib\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">..\lib\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">PocoZipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">PocoZipmdd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">PocoZipmtd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">PocoZip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">PocoZipmd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">PocoZipmt</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;Zip_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>..\bin\PocoZipd.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>..\bin\PocoZipd.pdb</ProgramDatabaseFile>
|
||||
<AdditionalLibraryDirectories>..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<ImportLibrary>..\lib\PocoZipd.lib</ImportLibrary>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;Zip_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>..\bin\PocoZip.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<AdditionalLibraryDirectories>..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<ImportLibrary>..\lib\PocoZip.lib</ImportLibrary>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<ProgramDataBaseFileName>..\lib\PocoZipmtd.pdb</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib\PocoZipmtd.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib\PocoZipmt.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<ProgramDataBaseFileName>..\lib\PocoZipmdd.pdb</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib\PocoZipmdd.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<ProgramDataBaseFileName>..\lib\PocoZipmd.pdb</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>..\lib\PocoZipmd.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="include\Poco\Zip\AutoDetectStream.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Compress.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Decompress.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ParseCallback.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\PartialStream.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\SkipCallback.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Zip.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchive.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchiveInfo.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipCommon.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipDataInfo.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipException.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipFileInfo.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipLocalFileHeader.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipStream.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipUtil.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Add.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Delete.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Keep.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Rename.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Replace.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipManipulator.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipOperation.h"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\AutoDetectStream.cpp"/>
|
||||
<ClCompile Include="src\Compress.cpp"/>
|
||||
<ClCompile Include="src\Decompress.cpp"/>
|
||||
<ClCompile Include="src\ParseCallback.cpp"/>
|
||||
<ClCompile Include="src\PartialStream.cpp"/>
|
||||
<ClCompile Include="src\SkipCallback.cpp"/>
|
||||
<ClCompile Include="src\ZipArchive.cpp"/>
|
||||
<ClCompile Include="src\ZipArchiveInfo.cpp"/>
|
||||
<ClCompile Include="src\ZipCommon.cpp"/>
|
||||
<ClCompile Include="src\ZipDataInfo.cpp"/>
|
||||
<ClCompile Include="src\ZipException.cpp"/>
|
||||
<ClCompile Include="src\ZipFileInfo.cpp"/>
|
||||
<ClCompile Include="src\ZipLocalFileHeader.cpp"/>
|
||||
<ClCompile Include="src\ZipStream.cpp"/>
|
||||
<ClCompile Include="src\ZipUtil.cpp"/>
|
||||
<ClCompile Include="src\Add.cpp"/>
|
||||
<ClCompile Include="src\Delete.cpp"/>
|
||||
<ClCompile Include="src\Keep.cpp"/>
|
||||
<ClCompile Include="src\Rename.cpp"/>
|
||||
<ClCompile Include="src\Replace.cpp"/>
|
||||
<ClCompile Include="src\ZipManipulator.cpp"/>
|
||||
<ClCompile Include="src\ZipOperation.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
162
Zip/Zip_vs100.vcxproj.filters
Normal file
162
Zip/Zip_vs100.vcxproj.filters
Normal file
@ -0,0 +1,162 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Zip">
|
||||
<UniqueIdentifier>{72b79442-4059-42d3-9334-c07b4eb1fc18}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Header Files">
|
||||
<UniqueIdentifier>{01639961-1cec-4552-b301-1a177407d9e6}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Source Files">
|
||||
<UniqueIdentifier>{d088345d-4cd7-4b16-8490-089f3ee795c1}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Manipulation">
|
||||
<UniqueIdentifier>{50c24850-f52e-4d0a-901c-24231f2cb224}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Manipulation\Header Files">
|
||||
<UniqueIdentifier>{c420c306-0c1f-468a-8f16-0ceb7170e4f3}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Manipulation\Source Files">
|
||||
<UniqueIdentifier>{2b1368e4-2014-4fcb-b15d-090da360d21c}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="include\Poco\Zip\AutoDetectStream.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Compress.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Decompress.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ParseCallback.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\PartialStream.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\SkipCallback.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Zip.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchive.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchiveInfo.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipCommon.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipDataInfo.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipException.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipFileInfo.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipLocalFileHeader.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipStream.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipUtil.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Add.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Delete.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Keep.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Rename.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Replace.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipManipulator.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipOperation.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\AutoDetectStream.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Compress.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Decompress.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ParseCallback.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\PartialStream.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\SkipCallback.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipArchive.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipArchiveInfo.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipCommon.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipDataInfo.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipException.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipFileInfo.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipLocalFileHeader.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipStream.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipUtil.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Add.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Delete.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Keep.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Rename.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Replace.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipManipulator.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipOperation.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/Zip_vs100.vcxproj.user
Normal file
3
Zip/Zip_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
60
Zip/Zip_x64_vs100.sln
Normal file
60
Zip/Zip_x64_vs100.sln
Normal file
@ -0,0 +1,60 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Zip", "Zip_x64_vs100.vcxproj", "{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestSuite", "testsuite\TestSuite_x64_vs100.vcxproj", "{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61} = {4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
debug_shared|x64 = debug_shared|x64
|
||||
release_shared|x64 = release_shared|x64
|
||||
debug_static_mt|x64 = debug_static_mt|x64
|
||||
release_static_mt|x64 = release_static_mt|x64
|
||||
debug_static_md|x64 = debug_static_md|x64
|
||||
release_static_md|x64 = release_static_md|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_shared|x64.ActiveCfg = debug_shared|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_shared|x64.Build.0 = debug_shared|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_shared|x64.Deploy.0 = debug_shared|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_shared|x64.ActiveCfg = release_shared|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_shared|x64.Build.0 = release_shared|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_shared|x64.Deploy.0 = release_shared|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_mt|x64.Build.0 = release_static_mt|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_md|x64.Build.0 = debug_static_md|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_md|x64.ActiveCfg = release_static_md|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_md|x64.Build.0 = release_static_md|x64
|
||||
{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}.release_static_md|x64.Deploy.0 = release_static_md|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_shared|x64.ActiveCfg = debug_shared|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_shared|x64.Build.0 = debug_shared|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_shared|x64.Deploy.0 = debug_shared|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_shared|x64.ActiveCfg = release_shared|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_shared|x64.Build.0 = release_shared|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_shared|x64.Deploy.0 = release_shared|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_mt|x64.Build.0 = release_static_mt|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_md|x64.Build.0 = debug_static_md|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_md|x64.ActiveCfg = release_static_md|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_md|x64.Build.0 = release_static_md|x64
|
||||
{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}.release_static_md|x64.Deploy.0 = release_static_md|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
318
Zip/Zip_x64_vs100.vcxproj
Normal file
318
Zip/Zip_x64_vs100.vcxproj
Normal file
@ -0,0 +1,318 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|x64">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|x64">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|x64">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|x64">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|x64">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|x64">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>Zip</ProjectName>
|
||||
<ProjectGuid>{4AC75EAD-BFCF-41E6-AB1F-0DA203CC7C61}</ProjectGuid>
|
||||
<RootNamespace>Zip</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">..\bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">..\bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">..\lib64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">..\lib64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">..\lib64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">..\lib64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">PocoZip64d</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">PocoZipmdd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">PocoZipmtd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">PocoZip64</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">PocoZipmd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">PocoZipmt</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;Zip_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>..\bin64\PocoZip64d.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>..\bin64\PocoZip64d.pdb</ProgramDatabaseFile>
|
||||
<AdditionalLibraryDirectories>..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<ImportLibrary>..\lib64\PocoZipd.lib</ImportLibrary>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;Zip_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>..\bin64\PocoZip64.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<AdditionalLibraryDirectories>..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<ImportLibrary>..\lib64\PocoZip.lib</ImportLibrary>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<ProgramDataBaseFileName>..\lib64\PocoZipmtd.pdb</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib64\PocoZipmtd.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib64\PocoZipmt.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<ProgramDataBaseFileName>..\lib64\PocoZipmdd.pdb</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib64\PocoZipmdd.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<OutputFile>..\lib64\PocoZipmd.lib</OutputFile>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="include\Poco\Zip\AutoDetectStream.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Compress.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Decompress.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ParseCallback.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\PartialStream.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\SkipCallback.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Zip.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchive.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchiveInfo.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipCommon.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipDataInfo.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipException.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipFileInfo.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipLocalFileHeader.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipStream.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipUtil.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Add.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Delete.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Keep.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Rename.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\Replace.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipManipulator.h"/>
|
||||
<ClInclude Include="include\Poco\Zip\ZipOperation.h"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\AutoDetectStream.cpp"/>
|
||||
<ClCompile Include="src\Compress.cpp"/>
|
||||
<ClCompile Include="src\Decompress.cpp"/>
|
||||
<ClCompile Include="src\ParseCallback.cpp"/>
|
||||
<ClCompile Include="src\PartialStream.cpp"/>
|
||||
<ClCompile Include="src\SkipCallback.cpp"/>
|
||||
<ClCompile Include="src\ZipArchive.cpp"/>
|
||||
<ClCompile Include="src\ZipArchiveInfo.cpp"/>
|
||||
<ClCompile Include="src\ZipCommon.cpp"/>
|
||||
<ClCompile Include="src\ZipDataInfo.cpp"/>
|
||||
<ClCompile Include="src\ZipException.cpp"/>
|
||||
<ClCompile Include="src\ZipFileInfo.cpp"/>
|
||||
<ClCompile Include="src\ZipLocalFileHeader.cpp"/>
|
||||
<ClCompile Include="src\ZipStream.cpp"/>
|
||||
<ClCompile Include="src\ZipUtil.cpp"/>
|
||||
<ClCompile Include="src\Add.cpp"/>
|
||||
<ClCompile Include="src\Delete.cpp"/>
|
||||
<ClCompile Include="src\Keep.cpp"/>
|
||||
<ClCompile Include="src\Rename.cpp"/>
|
||||
<ClCompile Include="src\Replace.cpp"/>
|
||||
<ClCompile Include="src\ZipManipulator.cpp"/>
|
||||
<ClCompile Include="src\ZipOperation.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
162
Zip/Zip_x64_vs100.vcxproj.filters
Normal file
162
Zip/Zip_x64_vs100.vcxproj.filters
Normal file
@ -0,0 +1,162 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Zip">
|
||||
<UniqueIdentifier>{8416403f-2a24-4bf9-81a5-a1fc61aa3d34}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Header Files">
|
||||
<UniqueIdentifier>{457dc6eb-138d-4c75-b775-55355829b824}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Source Files">
|
||||
<UniqueIdentifier>{1fd7c556-beac-4dc2-8462-95b0821de1d9}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Manipulation">
|
||||
<UniqueIdentifier>{f3fa315b-4b2d-4bf9-8af5-b88c7818fe0b}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Manipulation\Header Files">
|
||||
<UniqueIdentifier>{0d8436f2-516d-436d-ad80-5cd91169bea5}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Manipulation\Source Files">
|
||||
<UniqueIdentifier>{71fd6be1-d2c1-4e9d-b19a-0eb224dd5deb}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="include\Poco\Zip\AutoDetectStream.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Compress.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Decompress.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ParseCallback.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\PartialStream.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\SkipCallback.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Zip.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchive.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipArchiveInfo.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipCommon.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipDataInfo.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipException.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipFileInfo.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipLocalFileHeader.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipStream.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipUtil.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Add.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Delete.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Keep.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Rename.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\Replace.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipManipulator.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Poco\Zip\ZipOperation.h">
|
||||
<Filter>Manipulation\Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\AutoDetectStream.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Compress.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Decompress.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ParseCallback.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\PartialStream.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\SkipCallback.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipArchive.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipArchiveInfo.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipCommon.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipDataInfo.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipException.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipFileInfo.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipLocalFileHeader.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipStream.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipUtil.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Add.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Delete.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Keep.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Rename.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Replace.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipManipulator.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipOperation.cpp">
|
||||
<Filter>Manipulation\Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/Zip_x64_vs100.vcxproj.user
Normal file
3
Zip/Zip_x64_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
@ -1,114 +1,136 @@
|
||||
//
|
||||
// Compress.h
|
||||
//
|
||||
//
|
||||
// Compress.h
|
||||
//
|
||||
// $Id: //poco/Main/Zip/include/Poco/Zip/Compress.h#6 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Compress
|
||||
//
|
||||
// Definition of the Compress class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_Compress_INCLUDED
|
||||
#define Zip_Compress_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "Poco/Zip/ZipArchive.h"
|
||||
#include "Poco/FIFOEvent.h"
|
||||
#include <istream>
|
||||
#include <ostream>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
class Zip_API Compress
|
||||
/// Compresses a directory or files as zip.
|
||||
{
|
||||
public:
|
||||
Poco::FIFOEvent<const ZipLocalFileHeader> EDone;
|
||||
|
||||
Compress(std::ostream& out, bool seekableOut);
|
||||
/// seekableOut determines how we write the zip, setting it to true is recommended for local files (smaller zip file),
|
||||
/// if you are compressing directly to a network, you MUST set it to false
|
||||
|
||||
~Compress();
|
||||
|
||||
void addFile(std::istream& input, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm = ZipCommon::CM_DEFLATE, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM);
|
||||
/// Adds a single file to the Zip File. fileName must not be a directory name.
|
||||
|
||||
void addFile(const Poco::Path& file, const Poco::Path& fileName, ZipCommon::CompressionMethod cm = ZipCommon::CM_DEFLATE, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM);
|
||||
/// Adds a single file to the Zip File. fileName must not be a directory name. The file must exist physically!
|
||||
|
||||
void addDirectory(const Poco::Path& entryName, const Poco::DateTime& lastModifiedAt);
|
||||
/// Adds a directory entry excluding all children to the Zip file, entryName must not be empty.
|
||||
|
||||
void addRecursive(const Poco::Path& entry, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM, bool excludeRoot = true, const Poco::Path& name = Poco::Path());
|
||||
/// Adds a directory entry recursively to the zip file, set excludeRoot to false to exclude the parent directory.
|
||||
/// If excludeRoot is true you can specify an empty name to add the files as relative files
|
||||
|
||||
ZipArchive close();
|
||||
/// Finalizes the ZipArchive, closes it.
|
||||
|
||||
private:
|
||||
enum
|
||||
{
|
||||
COMPRESS_CHUNK_SIZE = 8192
|
||||
};
|
||||
|
||||
Compress(const Compress&);
|
||||
Compress& operator=(const Compress&);
|
||||
|
||||
void addEntry(std::istream& input, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm = ZipCommon::CM_DEFLATE, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM);
|
||||
/// Either adds a file or a single directory entry (excluding subchildren) to the Zip file. the compression level will be ignored
|
||||
/// for directories.
|
||||
|
||||
void addFileRaw(std::istream& in, const ZipLocalFileHeader& hdr, const Poco::Path& fileName);
|
||||
/// copys an already compressed ZipEntry from in
|
||||
|
||||
private:
|
||||
std::ostream& _out;
|
||||
bool _seekableOut;
|
||||
ZipArchive::FileHeaders _files;
|
||||
ZipArchive::FileInfos _infos;
|
||||
ZipArchive::DirectoryInfos _dirs;
|
||||
Poco::UInt32 _offset;
|
||||
|
||||
friend class Keep;
|
||||
friend class Rename;
|
||||
};
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
||||
|
||||
#endif // Zip_Compress_INCLUDED
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Compress
|
||||
//
|
||||
// Definition of the Compress class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_Compress_INCLUDED
|
||||
#define Zip_Compress_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "Poco/Zip/ZipArchive.h"
|
||||
#include "Poco/FIFOEvent.h"
|
||||
#include <istream>
|
||||
#include <ostream>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
class Zip_API Compress
|
||||
/// Compresses a directory or files as zip.
|
||||
{
|
||||
public:
|
||||
Poco::FIFOEvent<const ZipLocalFileHeader> EDone;
|
||||
|
||||
Compress(std::ostream& out, bool seekableOut);
|
||||
/// seekableOut determines how we write the zip, setting it to true is recommended for local files (smaller zip file),
|
||||
/// if you are compressing directly to a network, you MUST set it to false
|
||||
|
||||
~Compress();
|
||||
|
||||
void addFile(std::istream& input, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm = ZipCommon::CM_DEFLATE, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM);
|
||||
/// Adds a single file to the Zip File. fileName must not be a directory name.
|
||||
|
||||
void addFile(const Poco::Path& file, const Poco::Path& fileName, ZipCommon::CompressionMethod cm = ZipCommon::CM_DEFLATE, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM);
|
||||
/// Adds a single file to the Zip File. fileName must not be a directory name. The file must exist physically!
|
||||
|
||||
void addDirectory(const Poco::Path& entryName, const Poco::DateTime& lastModifiedAt);
|
||||
/// Adds a directory entry excluding all children to the Zip file, entryName must not be empty.
|
||||
|
||||
void addRecursive(const Poco::Path& entry, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM, bool excludeRoot = true, const Poco::Path& name = Poco::Path());
|
||||
/// Adds a directory entry recursively to the zip file, set excludeRoot to false to exclude the parent directory.
|
||||
/// If excludeRoot is true you can specify an empty name to add the files as relative files
|
||||
|
||||
void setZipComment(const std::string& comment);
|
||||
/// Sets the Zip file comment.
|
||||
|
||||
const std::string& getZipComment() const;
|
||||
/// Returns the Zip file comment.
|
||||
|
||||
ZipArchive close();
|
||||
/// Finalizes the ZipArchive, closes it.
|
||||
|
||||
private:
|
||||
enum
|
||||
{
|
||||
COMPRESS_CHUNK_SIZE = 8192
|
||||
};
|
||||
|
||||
Compress(const Compress&);
|
||||
Compress& operator=(const Compress&);
|
||||
|
||||
void addEntry(std::istream& input, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm = ZipCommon::CM_DEFLATE, ZipCommon::CompressionLevel cl = ZipCommon::CL_MAXIMUM);
|
||||
/// Either adds a file or a single directory entry (excluding subchildren) to the Zip file. the compression level will be ignored
|
||||
/// for directories.
|
||||
|
||||
void addFileRaw(std::istream& in, const ZipLocalFileHeader& hdr, const Poco::Path& fileName);
|
||||
/// copys an already compressed ZipEntry from in
|
||||
|
||||
private:
|
||||
std::ostream& _out;
|
||||
bool _seekableOut;
|
||||
ZipArchive::FileHeaders _files;
|
||||
ZipArchive::FileInfos _infos;
|
||||
ZipArchive::DirectoryInfos _dirs;
|
||||
Poco::UInt32 _offset;
|
||||
std::string _comment;
|
||||
|
||||
friend class Keep;
|
||||
friend class Rename;
|
||||
};
|
||||
|
||||
|
||||
//
|
||||
// inlines
|
||||
//
|
||||
inline void Compress::setZipComment(const std::string& comment)
|
||||
{
|
||||
_comment = comment;
|
||||
}
|
||||
|
||||
|
||||
inline const std::string& Compress::getZipComment() const
|
||||
{
|
||||
return _comment;
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
||||
|
||||
#endif // Zip_Compress_INCLUDED
|
||||
|
@ -1,92 +1,80 @@
|
||||
//
|
||||
// Zip.h
|
||||
//
|
||||
//
|
||||
// Zip.h
|
||||
//
|
||||
// $Id: //poco/Main/Zip/include/Poco/Zip/Zip.h#5 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Zip
|
||||
//
|
||||
// Basic definitions for the Poco Zip library.
|
||||
// This file must be the first file included by every other Zip
|
||||
// header file.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_Zip_INCLUDED
|
||||
#define Zip_Zip_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Foundation.h"
|
||||
|
||||
|
||||
//
|
||||
// The following block is the standard way of creating macros which make exporting
|
||||
// from a DLL simpler. All files within this DLL are compiled with the Zip_EXPORTS
|
||||
// symbol defined on the command line. this symbol should not be defined on any project
|
||||
// that uses this DLL. This way any other project whose source files include this file see
|
||||
// Zip_API functions as being imported from a DLL, wheras this DLL sees symbols
|
||||
// defined with this macro as being exported.
|
||||
//
|
||||
#if defined(_WIN32) && defined(POCO_DLL)
|
||||
#if defined(Zip_EXPORTS)
|
||||
#define Zip_API __declspec(dllexport)
|
||||
#else
|
||||
#define Zip_API __declspec(dllimport)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#if !defined(Zip_API)
|
||||
#define Zip_API
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
// Automatically link Zip library.
|
||||
//
|
||||
#if defined(_MSC_VER)
|
||||
#if !defined(POCO_NO_AUTOMATIC_LIBS) && !defined(Zip_EXPORTS)
|
||||
#if defined(POCO_DLL)
|
||||
#if defined(_DEBUG)
|
||||
#pragma comment(lib, "PocoZipd.lib")
|
||||
#else
|
||||
#pragma comment(lib, "PocoZip.lib")
|
||||
#endif
|
||||
#else
|
||||
#if defined(_DEBUG)
|
||||
#pragma comment(lib, "PocoZipmtd.lib")
|
||||
#else
|
||||
#pragma comment(lib, "PocoZipmt.lib")
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#endif // Zip_Zip_INCLUDED
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Zip
|
||||
//
|
||||
// Basic definitions for the Poco Zip library.
|
||||
// This file must be the first file included by every other Zip
|
||||
// header file.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_Zip_INCLUDED
|
||||
#define Zip_Zip_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Foundation.h"
|
||||
|
||||
|
||||
//
|
||||
// The following block is the standard way of creating macros which make exporting
|
||||
// from a DLL simpler. All files within this DLL are compiled with the Zip_EXPORTS
|
||||
// symbol defined on the command line. this symbol should not be defined on any project
|
||||
// that uses this DLL. This way any other project whose source files include this file see
|
||||
// Zip_API functions as being imported from a DLL, wheras this DLL sees symbols
|
||||
// defined with this macro as being exported.
|
||||
//
|
||||
#if defined(_WIN32) && defined(POCO_DLL)
|
||||
#if defined(Zip_EXPORTS)
|
||||
#define Zip_API __declspec(dllexport)
|
||||
#else
|
||||
#define Zip_API __declspec(dllimport)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#if !defined(Zip_API)
|
||||
#define Zip_API
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
// Automatically link Zip library.
|
||||
//
|
||||
#if defined(_MSC_VER)
|
||||
#if !defined(POCO_NO_AUTOMATIC_LIBS) && !defined(Zip_EXPORTS)
|
||||
#pragma comment(lib, "PocoZip" POCO_LIB_SUFFIX)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#endif // Zip_Zip_INCLUDED
|
||||
|
@ -1,136 +1,138 @@
|
||||
//
|
||||
// ZipArchive.h
|
||||
//
|
||||
//
|
||||
// ZipArchive.h
|
||||
//
|
||||
// $Id: //poco/Main/Zip/include/Poco/Zip/ZipArchive.h#7 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchive
|
||||
//
|
||||
// Definition of the ZipArchive class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_ZipArchive_INCLUDED
|
||||
#define Zip_ZipArchive_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "Poco/Zip/ZipLocalFileHeader.h"
|
||||
#include "Poco/Zip/ZipFileInfo.h"
|
||||
#include "Poco/Zip/ZipArchiveInfo.h"
|
||||
#include <istream>
|
||||
#include <map>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
class ParseCallback;
|
||||
class Compress;
|
||||
|
||||
|
||||
class Zip_API ZipArchive
|
||||
/// A ZipArchive contains information on the content of a zip file
|
||||
{
|
||||
public:
|
||||
typedef std::map<std::string, ZipLocalFileHeader> FileHeaders;
|
||||
typedef std::map<std::string, ZipFileInfo> FileInfos;
|
||||
typedef std::map<Poco::UInt16, ZipArchiveInfo> DirectoryInfos;
|
||||
|
||||
ZipArchive(std::istream& in);
|
||||
/// Creates the ZipArchive from a file. Note that the in stream will be in state failed after the constructor is finished
|
||||
|
||||
ZipArchive(std::istream& in, ParseCallback& callback);
|
||||
/// Creates the ZipArchive from a file or network stream. Note that the in stream will be in state failed after the constructor is finished
|
||||
|
||||
~ZipArchive();
|
||||
/// Destroys the ZipArchive.
|
||||
|
||||
FileInfos::const_iterator fileInfoBegin() const;
|
||||
|
||||
FileInfos::const_iterator fileInfoEnd() const;
|
||||
|
||||
FileHeaders::const_iterator findHeader(const std::string& fileName) const;
|
||||
|
||||
FileHeaders::const_iterator headerBegin() const;
|
||||
|
||||
FileHeaders::const_iterator headerEnd() const;
|
||||
|
||||
private:
|
||||
void parse(std::istream& in, ParseCallback& pc);
|
||||
|
||||
ZipArchive(const FileHeaders& entries, const FileInfos& infos, const DirectoryInfos& dirs );
|
||||
|
||||
private:
|
||||
FileHeaders _entries;
|
||||
/// Info generated by parsing the data block of the zip file
|
||||
FileInfos _infos;
|
||||
/// Info generated by parsing the directory block of the zip file
|
||||
DirectoryInfos _disks;
|
||||
/// Stores directory info for all found disks
|
||||
|
||||
friend class Compress;
|
||||
};
|
||||
|
||||
|
||||
inline ZipArchive::FileInfos::const_iterator ZipArchive::fileInfoBegin() const
|
||||
{
|
||||
return _infos.begin();
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileInfos::const_iterator ZipArchive::fileInfoEnd() const
|
||||
{
|
||||
return _infos.end();
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileHeaders::const_iterator ZipArchive::findHeader(const std::string& fileName) const
|
||||
{
|
||||
return _entries.find(fileName);
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileHeaders::const_iterator ZipArchive::headerBegin() const
|
||||
{
|
||||
return _entries.begin();
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileHeaders::const_iterator ZipArchive::headerEnd() const
|
||||
{
|
||||
return _entries.end();
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
||||
|
||||
#endif // Zip_ZipArchive_INCLUDED
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchive
|
||||
//
|
||||
// Definition of the ZipArchive class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_ZipArchive_INCLUDED
|
||||
#define Zip_ZipArchive_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "Poco/Zip/ZipLocalFileHeader.h"
|
||||
#include "Poco/Zip/ZipFileInfo.h"
|
||||
#include "Poco/Zip/ZipArchiveInfo.h"
|
||||
#include <istream>
|
||||
#include <map>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
class ParseCallback;
|
||||
class Compress;
|
||||
|
||||
|
||||
class Zip_API ZipArchive
|
||||
/// A ZipArchive contains information on the content of a zip file
|
||||
{
|
||||
public:
|
||||
typedef std::map<std::string, ZipLocalFileHeader> FileHeaders;
|
||||
typedef std::map<std::string, ZipFileInfo> FileInfos;
|
||||
typedef std::map<Poco::UInt16, ZipArchiveInfo> DirectoryInfos;
|
||||
|
||||
ZipArchive(std::istream& in);
|
||||
/// Creates the ZipArchive from a file. Note that the in stream will be in state failed after the constructor is finished
|
||||
|
||||
ZipArchive(std::istream& in, ParseCallback& callback);
|
||||
/// Creates the ZipArchive from a file or network stream. Note that the in stream will be in state failed after the constructor is finished
|
||||
|
||||
~ZipArchive();
|
||||
/// Destroys the ZipArchive.
|
||||
|
||||
FileInfos::const_iterator fileInfoBegin() const;
|
||||
|
||||
FileInfos::const_iterator fileInfoEnd() const;
|
||||
|
||||
FileHeaders::const_iterator findHeader(const std::string& fileName) const;
|
||||
|
||||
FileHeaders::const_iterator headerBegin() const;
|
||||
|
||||
FileHeaders::const_iterator headerEnd() const;
|
||||
|
||||
const std::string& getZipComment() const;
|
||||
|
||||
private:
|
||||
void parse(std::istream& in, ParseCallback& pc);
|
||||
|
||||
ZipArchive(const FileHeaders& entries, const FileInfos& infos, const DirectoryInfos& dirs );
|
||||
|
||||
private:
|
||||
FileHeaders _entries;
|
||||
/// Info generated by parsing the data block of the zip file
|
||||
FileInfos _infos;
|
||||
/// Info generated by parsing the directory block of the zip file
|
||||
DirectoryInfos _disks;
|
||||
/// Stores directory info for all found disks
|
||||
|
||||
friend class Compress;
|
||||
};
|
||||
|
||||
|
||||
inline ZipArchive::FileInfos::const_iterator ZipArchive::fileInfoBegin() const
|
||||
{
|
||||
return _infos.begin();
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileInfos::const_iterator ZipArchive::fileInfoEnd() const
|
||||
{
|
||||
return _infos.end();
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileHeaders::const_iterator ZipArchive::findHeader(const std::string& fileName) const
|
||||
{
|
||||
return _entries.find(fileName);
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileHeaders::const_iterator ZipArchive::headerBegin() const
|
||||
{
|
||||
return _entries.begin();
|
||||
}
|
||||
|
||||
|
||||
inline ZipArchive::FileHeaders::const_iterator ZipArchive::headerEnd() const
|
||||
{
|
||||
return _entries.end();
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
||||
|
||||
#endif // Zip_ZipArchive_INCLUDED
|
||||
|
@ -1,210 +1,213 @@
|
||||
//
|
||||
// ZipArchiveInfo.h
|
||||
//
|
||||
//
|
||||
// ZipArchiveInfo.h
|
||||
//
|
||||
// $Id: //poco/Main/Zip/include/Poco/Zip/ZipArchiveInfo.h#6 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchiveInfo
|
||||
//
|
||||
// Definition of the ZipArchiveInfo class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_ZipArchiveInfo_INCLUDED
|
||||
#define Zip_ZipArchiveInfo_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "Poco/Zip/ZipCommon.h"
|
||||
#include "Poco/Zip/ZipUtil.h"
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
class Zip_API ZipArchiveInfo
|
||||
/// A ZipArchiveInfo stores central directory info
|
||||
{
|
||||
public:
|
||||
static const char HEADER[ZipCommon::HEADER_SIZE];
|
||||
|
||||
ZipArchiveInfo();
|
||||
/// Default constructor, everything set to zero or empty
|
||||
|
||||
ZipArchiveInfo(std::istream& in, bool assumeHeaderRead);
|
||||
/// Creates the ZipArchiveInfo by parsing the input stream.
|
||||
/// If assumeHeaderRead is true we assume that the first 4 bytes were already read outside.
|
||||
|
||||
~ZipArchiveInfo();
|
||||
/// Destroys the ZipArchiveInfo.
|
||||
|
||||
Poco::UInt16 getDiskNumber() const;
|
||||
/// Get the number of the disk where this header can be found
|
||||
|
||||
Poco::UInt16 getFirstDiskForDirectoryHeader() const;
|
||||
/// Returns the number of the disk that contains the start of the directory header
|
||||
|
||||
Poco::UInt16 getNumberOfEntries() const;
|
||||
/// Returns the number of entries on this disk
|
||||
|
||||
Poco::UInt16 getTotalNumberOfEntries() const;
|
||||
/// Returns the total number of entries on all disks
|
||||
|
||||
Poco::UInt32 getCentralDirectorySize() const;
|
||||
/// Returns the size of the central directory in bytes
|
||||
|
||||
std::streamoff getHeaderOffset() const;
|
||||
/// Returns the offset of the header in relation to the begin of this disk
|
||||
|
||||
const std::string& getZipComment() const;
|
||||
/// Returns the (optional) Zip Comment
|
||||
|
||||
void setNumberOfEntries(Poco::UInt16 val);
|
||||
/// Returns the number of entries on this disk
|
||||
|
||||
void setTotalNumberOfEntries(Poco::UInt16 val);
|
||||
/// Returns the total number of entries on all disks
|
||||
|
||||
void setCentralDirectorySize(Poco::UInt32 val);
|
||||
/// Returns the size of the central directory in bytes
|
||||
|
||||
void setHeaderOffset(Poco::UInt32 val);
|
||||
|
||||
std::string createHeader() const;
|
||||
/// Creates a header
|
||||
|
||||
private:
|
||||
void parse(std::istream& inp, bool assumeHeaderRead);
|
||||
|
||||
Poco::UInt16 getZipCommentSize() const;
|
||||
|
||||
private:
|
||||
enum
|
||||
{
|
||||
HEADER_POS = 0,
|
||||
NUMBEROFTHISDISK_POS = HEADER_POS + ZipCommon::HEADER_SIZE,
|
||||
NUMBEROFTHISDISK_SIZE = 2,
|
||||
NUMBEROFCENTRALDIRDISK_POS = NUMBEROFTHISDISK_POS + NUMBEROFTHISDISK_SIZE,
|
||||
NUMBEROFCENTRALDIRDISK_SIZE = 2,
|
||||
NUMENTRIESTHISDISK_POS = NUMBEROFCENTRALDIRDISK_POS + NUMBEROFCENTRALDIRDISK_SIZE,
|
||||
NUMENTRIESTHISDISK_SIZE = 2,
|
||||
TOTALNUMENTRIES_POS = NUMENTRIESTHISDISK_POS + NUMENTRIESTHISDISK_SIZE,
|
||||
TOTALNUMENTRIES_SIZE = 2,
|
||||
CENTRALDIRSIZE_POS = TOTALNUMENTRIES_POS + TOTALNUMENTRIES_SIZE,
|
||||
CENTRALDIRSIZE_SIZE = 4,
|
||||
CENTRALDIRSTARTOFFSET_POS = CENTRALDIRSIZE_POS + CENTRALDIRSIZE_SIZE,
|
||||
CENTRALDIRSTARTOFFSET_SIZE = 4,
|
||||
ZIPCOMMENT_LENGTH_POS = CENTRALDIRSTARTOFFSET_POS + CENTRALDIRSTARTOFFSET_SIZE,
|
||||
ZIPCOMMENT_LENGTH_SIZE = 2,
|
||||
FULLHEADER_SIZE = 22
|
||||
};
|
||||
|
||||
char _rawInfo[FULLHEADER_SIZE];
|
||||
std::streamoff _startPos;
|
||||
std::string _comment;
|
||||
};
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getDiskNumber() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, NUMBEROFTHISDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getFirstDiskForDirectoryHeader() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, NUMBEROFCENTRALDIRDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getNumberOfEntries() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, NUMENTRIESTHISDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getTotalNumberOfEntries() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, TOTALNUMENTRIES_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt32 ZipArchiveInfo::getCentralDirectorySize() const
|
||||
{
|
||||
return ZipUtil::get32BitValue(_rawInfo, CENTRALDIRSIZE_POS);
|
||||
}
|
||||
|
||||
|
||||
inline std::streamoff ZipArchiveInfo::getHeaderOffset() const
|
||||
{
|
||||
return _startPos;
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getZipCommentSize() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, ZIPCOMMENT_LENGTH_POS);
|
||||
}
|
||||
|
||||
|
||||
inline const std::string& ZipArchiveInfo::getZipComment() const
|
||||
{
|
||||
return _comment;
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setNumberOfEntries(Poco::UInt16 val)
|
||||
{
|
||||
ZipUtil::set16BitValue(val, _rawInfo, NUMENTRIESTHISDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setTotalNumberOfEntries(Poco::UInt16 val)
|
||||
{
|
||||
ZipUtil::set16BitValue(val, _rawInfo, TOTALNUMENTRIES_POS);
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setCentralDirectorySize(Poco::UInt32 val)
|
||||
{
|
||||
ZipUtil::set32BitValue(val, _rawInfo, CENTRALDIRSIZE_POS);
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setHeaderOffset(Poco::UInt32 val)
|
||||
{
|
||||
ZipUtil::set32BitValue(val, _rawInfo, CENTRALDIRSTARTOFFSET_POS);
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
||||
|
||||
#endif // Zip_ZipArchiveInfo_INCLUDED
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchiveInfo
|
||||
//
|
||||
// Definition of the ZipArchiveInfo class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef Zip_ZipArchiveInfo_INCLUDED
|
||||
#define Zip_ZipArchiveInfo_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "Poco/Zip/ZipCommon.h"
|
||||
#include "Poco/Zip/ZipUtil.h"
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
class Zip_API ZipArchiveInfo
|
||||
/// A ZipArchiveInfo stores central directory info
|
||||
{
|
||||
public:
|
||||
static const char HEADER[ZipCommon::HEADER_SIZE];
|
||||
|
||||
ZipArchiveInfo();
|
||||
/// Default constructor, everything set to zero or empty
|
||||
|
||||
ZipArchiveInfo(std::istream& in, bool assumeHeaderRead);
|
||||
/// Creates the ZipArchiveInfo by parsing the input stream.
|
||||
/// If assumeHeaderRead is true we assume that the first 4 bytes were already read outside.
|
||||
|
||||
~ZipArchiveInfo();
|
||||
/// Destroys the ZipArchiveInfo.
|
||||
|
||||
Poco::UInt16 getDiskNumber() const;
|
||||
/// Get the number of the disk where this header can be found
|
||||
|
||||
Poco::UInt16 getFirstDiskForDirectoryHeader() const;
|
||||
/// Returns the number of the disk that contains the start of the directory header
|
||||
|
||||
Poco::UInt16 getNumberOfEntries() const;
|
||||
/// Returns the number of entries on this disk
|
||||
|
||||
Poco::UInt16 getTotalNumberOfEntries() const;
|
||||
/// Returns the total number of entries on all disks
|
||||
|
||||
Poco::UInt32 getCentralDirectorySize() const;
|
||||
/// Returns the size of the central directory in bytes
|
||||
|
||||
std::streamoff getHeaderOffset() const;
|
||||
/// Returns the offset of the header in relation to the begin of this disk
|
||||
|
||||
const std::string& getZipComment() const;
|
||||
/// Returns the (optional) Zip Comment
|
||||
|
||||
void setZipComment(const std::string& comment);
|
||||
/// Sets the optional Zip comment.
|
||||
|
||||
void setNumberOfEntries(Poco::UInt16 val);
|
||||
/// Returns the number of entries on this disk
|
||||
|
||||
void setTotalNumberOfEntries(Poco::UInt16 val);
|
||||
/// Returns the total number of entries on all disks
|
||||
|
||||
void setCentralDirectorySize(Poco::UInt32 val);
|
||||
/// Returns the size of the central directory in bytes
|
||||
|
||||
void setHeaderOffset(Poco::UInt32 val);
|
||||
|
||||
std::string createHeader() const;
|
||||
/// Creates a header
|
||||
|
||||
private:
|
||||
void parse(std::istream& inp, bool assumeHeaderRead);
|
||||
|
||||
Poco::UInt16 getZipCommentSize() const;
|
||||
|
||||
private:
|
||||
enum
|
||||
{
|
||||
HEADER_POS = 0,
|
||||
NUMBEROFTHISDISK_POS = HEADER_POS + ZipCommon::HEADER_SIZE,
|
||||
NUMBEROFTHISDISK_SIZE = 2,
|
||||
NUMBEROFCENTRALDIRDISK_POS = NUMBEROFTHISDISK_POS + NUMBEROFTHISDISK_SIZE,
|
||||
NUMBEROFCENTRALDIRDISK_SIZE = 2,
|
||||
NUMENTRIESTHISDISK_POS = NUMBEROFCENTRALDIRDISK_POS + NUMBEROFCENTRALDIRDISK_SIZE,
|
||||
NUMENTRIESTHISDISK_SIZE = 2,
|
||||
TOTALNUMENTRIES_POS = NUMENTRIESTHISDISK_POS + NUMENTRIESTHISDISK_SIZE,
|
||||
TOTALNUMENTRIES_SIZE = 2,
|
||||
CENTRALDIRSIZE_POS = TOTALNUMENTRIES_POS + TOTALNUMENTRIES_SIZE,
|
||||
CENTRALDIRSIZE_SIZE = 4,
|
||||
CENTRALDIRSTARTOFFSET_POS = CENTRALDIRSIZE_POS + CENTRALDIRSIZE_SIZE,
|
||||
CENTRALDIRSTARTOFFSET_SIZE = 4,
|
||||
ZIPCOMMENT_LENGTH_POS = CENTRALDIRSTARTOFFSET_POS + CENTRALDIRSTARTOFFSET_SIZE,
|
||||
ZIPCOMMENT_LENGTH_SIZE = 2,
|
||||
FULLHEADER_SIZE = 22
|
||||
};
|
||||
|
||||
char _rawInfo[FULLHEADER_SIZE];
|
||||
std::streamoff _startPos;
|
||||
std::string _comment;
|
||||
};
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getDiskNumber() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, NUMBEROFTHISDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getFirstDiskForDirectoryHeader() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, NUMBEROFCENTRALDIRDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getNumberOfEntries() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, NUMENTRIESTHISDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getTotalNumberOfEntries() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, TOTALNUMENTRIES_POS);
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt32 ZipArchiveInfo::getCentralDirectorySize() const
|
||||
{
|
||||
return ZipUtil::get32BitValue(_rawInfo, CENTRALDIRSIZE_POS);
|
||||
}
|
||||
|
||||
|
||||
inline std::streamoff ZipArchiveInfo::getHeaderOffset() const
|
||||
{
|
||||
return _startPos;
|
||||
}
|
||||
|
||||
|
||||
inline Poco::UInt16 ZipArchiveInfo::getZipCommentSize() const
|
||||
{
|
||||
return ZipUtil::get16BitValue(_rawInfo, ZIPCOMMENT_LENGTH_POS);
|
||||
}
|
||||
|
||||
|
||||
inline const std::string& ZipArchiveInfo::getZipComment() const
|
||||
{
|
||||
return _comment;
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setNumberOfEntries(Poco::UInt16 val)
|
||||
{
|
||||
ZipUtil::set16BitValue(val, _rawInfo, NUMENTRIESTHISDISK_POS);
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setTotalNumberOfEntries(Poco::UInt16 val)
|
||||
{
|
||||
ZipUtil::set16BitValue(val, _rawInfo, TOTALNUMENTRIES_POS);
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setCentralDirectorySize(Poco::UInt32 val)
|
||||
{
|
||||
ZipUtil::set32BitValue(val, _rawInfo, CENTRALDIRSIZE_POS);
|
||||
}
|
||||
|
||||
|
||||
inline void ZipArchiveInfo::setHeaderOffset(Poco::UInt32 val)
|
||||
{
|
||||
ZipUtil::set32BitValue(val, _rawInfo, CENTRALDIRSTARTOFFSET_POS);
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
||||
|
||||
#endif // Zip_ZipArchiveInfo_INCLUDED
|
||||
|
57
Zip/samples/samples_vs100.sln
Normal file
57
Zip/samples/samples_vs100.sln
Normal file
@ -0,0 +1,57 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zip", "zip\zip_vs100.vcxproj", "{7F3AD0E5-A150-3AE7-9041-9086C45020C0}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unzip", "unzip\unzip_vs100.vcxproj", "{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
debug_shared|Win32 = debug_shared|Win32
|
||||
release_shared|Win32 = release_shared|Win32
|
||||
debug_static_mt|Win32 = debug_static_mt|Win32
|
||||
release_static_mt|Win32 = release_static_mt|Win32
|
||||
debug_static_md|Win32 = debug_static_md|Win32
|
||||
release_static_md|Win32 = release_static_md|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_shared|Win32.Build.0 = debug_shared|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_shared|Win32.ActiveCfg = release_shared|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_shared|Win32.Build.0 = release_shared|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_shared|Win32.Deploy.0 = release_shared|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_md|Win32.Build.0 = release_static_md|Win32
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_shared|Win32.Build.0 = debug_shared|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_shared|Win32.ActiveCfg = release_shared|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_shared|Win32.Build.0 = release_shared|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_shared|Win32.Deploy.0 = release_shared|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_md|Win32.Build.0 = release_static_md|Win32
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
57
Zip/samples/samples_x64_vs100.sln
Normal file
57
Zip/samples/samples_x64_vs100.sln
Normal file
@ -0,0 +1,57 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zip", "zip\zip_x64_vs100.vcxproj", "{7F3AD0E5-A150-3AE7-9041-9086C45020C0}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unzip", "unzip\unzip_x64_vs100.vcxproj", "{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
debug_shared|x64 = debug_shared|x64
|
||||
release_shared|x64 = release_shared|x64
|
||||
debug_static_mt|x64 = debug_static_mt|x64
|
||||
release_static_mt|x64 = release_static_mt|x64
|
||||
debug_static_md|x64 = debug_static_md|x64
|
||||
release_static_md|x64 = release_static_md|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_shared|x64.ActiveCfg = debug_shared|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_shared|x64.Build.0 = debug_shared|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_shared|x64.Deploy.0 = debug_shared|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_shared|x64.ActiveCfg = release_shared|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_shared|x64.Build.0 = release_shared|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_shared|x64.Deploy.0 = release_shared|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_mt|x64.Build.0 = release_static_mt|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_md|x64.Build.0 = debug_static_md|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_md|x64.ActiveCfg = release_static_md|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_md|x64.Build.0 = release_static_md|x64
|
||||
{7F3AD0E5-A150-3AE7-9041-9086C45020C0}.release_static_md|x64.Deploy.0 = release_static_md|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_shared|x64.ActiveCfg = debug_shared|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_shared|x64.Build.0 = debug_shared|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_shared|x64.Deploy.0 = debug_shared|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_shared|x64.ActiveCfg = release_shared|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_shared|x64.Build.0 = release_shared|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_shared|x64.Deploy.0 = release_shared|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_mt|x64.Build.0 = release_static_mt|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_md|x64.Build.0 = debug_static_md|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_md|x64.ActiveCfg = release_static_md|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_md|x64.Build.0 = release_static_md|x64
|
||||
{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}.release_static_md|x64.Deploy.0 = release_static_md|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
299
Zip/samples/unzip/unzip_vs100.vcxproj
Normal file
299
Zip/samples/unzip/unzip_vs100.vcxproj
Normal file
@ -0,0 +1,299 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|Win32">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|Win32">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|Win32">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|Win32">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|Win32">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|Win32">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>unzip</ProjectName>
|
||||
<ProjectGuid>{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}</ProjectGuid>
|
||||
<RootNamespace>unzip</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">bin\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">bin\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">bin\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">bin\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">false</LinkIncremental>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">unzipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">unzipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">unzipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">unzip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">unzip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">unzip</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\unzipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\unzipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\unzip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_mt\unzipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\static_mt\unzipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_mt\unzip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_md\unzipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\static_md\unzipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_md\unzip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\unzip.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
16
Zip/samples/unzip/unzip_vs100.vcxproj.filters
Normal file
16
Zip/samples/unzip/unzip_vs100.vcxproj.filters
Normal file
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{f6b1fb43-59ba-4663-b293-f3cfde92502a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{6d562fb0-fae5-45a0-9317-0d699a144d2f}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\unzip.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/samples/unzip/unzip_vs100.vcxproj.user
Normal file
3
Zip/samples/unzip/unzip_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
299
Zip/samples/unzip/unzip_x64_vs100.vcxproj
Normal file
299
Zip/samples/unzip/unzip_x64_vs100.vcxproj
Normal file
@ -0,0 +1,299 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|x64">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|x64">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|x64">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|x64">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|x64">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|x64">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>unzip</ProjectName>
|
||||
<ProjectGuid>{9FE5275A-E14A-30C2-9C5B-AEBDE780608F}</ProjectGuid>
|
||||
<RootNamespace>unzip</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">bin64\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">bin64\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">bin64\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">bin64\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">false</LinkIncremental>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">unzipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">unzipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">unzipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">unzip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">unzip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">unzip</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\unzipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\unzipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\unzip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_mt\unzipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\static_mt\unzipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_mt\unzip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_md\unzipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\static_md\unzipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_md\unzip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\unzip.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
16
Zip/samples/unzip/unzip_x64_vs100.vcxproj.filters
Normal file
16
Zip/samples/unzip/unzip_x64_vs100.vcxproj.filters
Normal file
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{65a883cd-edbc-4e78-9b37-d11b258eb6bf}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{e12c33da-9f0d-45ce-aba4-3b8f75fe895a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\unzip.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/samples/unzip/unzip_x64_vs100.vcxproj.user
Normal file
3
Zip/samples/unzip/unzip_x64_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
299
Zip/samples/zip/zip_vs100.vcxproj
Normal file
299
Zip/samples/zip/zip_vs100.vcxproj
Normal file
@ -0,0 +1,299 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|Win32">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|Win32">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|Win32">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|Win32">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|Win32">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|Win32">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>zip</ProjectName>
|
||||
<ProjectGuid>{7F3AD0E5-A150-3AE7-9041-9086C45020C0}</ProjectGuid>
|
||||
<RootNamespace>zip</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">bin\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">bin\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">bin\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">bin\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">false</LinkIncremental>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">zipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">zipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">zipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">zip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">zip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">zip</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\zipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\zipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\zip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_mt\zipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\static_mt\zipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_mt\zip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_md\zipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\static_md\zipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_md\zip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\zip.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
13
Zip/samples/zip/zip_vs100.vcxproj.filters
Normal file
13
Zip/samples/zip/zip_vs100.vcxproj.filters
Normal file
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{a167d694-66e1-4bd5-a3de-d12168de3a4f}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\zip.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/samples/zip/zip_vs100.vcxproj.user
Normal file
3
Zip/samples/zip/zip_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
299
Zip/samples/zip/zip_x64_vs100.vcxproj
Normal file
299
Zip/samples/zip/zip_x64_vs100.vcxproj
Normal file
@ -0,0 +1,299 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|x64">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|x64">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|x64">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|x64">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|x64">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|x64">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>zip</ProjectName>
|
||||
<ProjectGuid>{7F3AD0E5-A150-3AE7-9041-9086C45020C0}</ProjectGuid>
|
||||
<RootNamespace>zip</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">bin64\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">bin64\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">bin64\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">bin64\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">false</LinkIncremental>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">zipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">zipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">zipd</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">zip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">zip</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">zip</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\zipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\zipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\zip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_mt\zipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\static_mt\zipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_mt\zip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_md\zipd.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\static_md\zipd.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Zip\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_md\zip.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\zip.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
13
Zip/samples/zip/zip_x64_vs100.vcxproj.filters
Normal file
13
Zip/samples/zip/zip_x64_vs100.vcxproj.filters
Normal file
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{3f20617f-1946-4287-9748-885f08cb5af3}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\zip.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/samples/zip/zip_x64_vs100.vcxproj.user
Normal file
3
Zip/samples/zip/zip_x64_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
@ -1,322 +1,323 @@
|
||||
//
|
||||
// Compress.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/src/Compress.cpp#8 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Compress
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/Compress.h"
|
||||
#include "Poco/Zip/ZipLocalFileHeader.h"
|
||||
#include "Poco/Zip/ZipStream.h"
|
||||
#include "Poco/Zip/ZipArchiveInfo.h"
|
||||
#include "Poco/Zip/ZipDataInfo.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/StreamCopier.h"
|
||||
#include "Poco/File.h"
|
||||
#include <fstream>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
Compress::Compress(std::ostream& out, bool seekableOut):
|
||||
_out(out),
|
||||
_seekableOut(seekableOut),
|
||||
_files(),
|
||||
_infos(),
|
||||
_dirs(),
|
||||
_offset(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
Compress::~Compress()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void Compress::addEntry(std::istream& in, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
std::string fn = ZipUtil::validZipEntryFileName(fileName);
|
||||
|
||||
if (_files.size() >= 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
if (!in.good())
|
||||
throw ZipException("Invalid input stream");
|
||||
|
||||
std::streamoff localHeaderOffset = _offset;
|
||||
ZipLocalFileHeader hdr(fileName, lastModifiedAt, cm, cl);
|
||||
hdr.setStartPos(localHeaderOffset);
|
||||
|
||||
ZipOutputStream zipOut(_out, hdr, _seekableOut);
|
||||
Poco::StreamCopier::copyStream(in, zipOut);
|
||||
zipOut.close();
|
||||
hdr.setStartPos(localHeaderOffset); // reset again now that compressed Size is known
|
||||
_offset = hdr.getEndPos();
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
_offset += ZipDataInfo::getFullHeaderSize();
|
||||
_files.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), hdr));
|
||||
poco_assert (_out);
|
||||
ZipFileInfo nfo(hdr);
|
||||
nfo.setOffset(localHeaderOffset);
|
||||
_infos.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), nfo));
|
||||
EDone.notify(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addFileRaw(std::istream& in, const ZipLocalFileHeader& h, const Poco::Path& fileName)
|
||||
{
|
||||
std::string fn = ZipUtil::validZipEntryFileName(fileName);
|
||||
//bypass the header of the input stream and point to the first byte of the data payload
|
||||
in.seekg(h.getDataStartPos(), std::ios_base::beg);
|
||||
|
||||
if (_files.size() >= 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
if (!in.good())
|
||||
throw ZipException("Invalid input stream");
|
||||
|
||||
std::streamoff localHeaderOffset = _offset;
|
||||
ZipLocalFileHeader hdr(h);
|
||||
hdr.setFileName(fn, h.isDirectory());
|
||||
hdr.setStartPos(localHeaderOffset);
|
||||
//bypass zipoutputstream
|
||||
//write the header directly
|
||||
std::string header = hdr.createHeader();
|
||||
_out.write(header.c_str(), static_cast<std::streamsize>(header.size()));
|
||||
// now fwd the payload to _out in chunks of size CHUNKSIZE
|
||||
Poco::UInt32 totalSize = hdr.getCompressedSize();
|
||||
if (totalSize > 0)
|
||||
{
|
||||
Poco::Buffer<char> buffer(COMPRESS_CHUNK_SIZE);
|
||||
Poco::UInt32 remaining = totalSize;
|
||||
while(remaining > 0)
|
||||
{
|
||||
if (remaining > COMPRESS_CHUNK_SIZE)
|
||||
{
|
||||
in.read(buffer.begin(), COMPRESS_CHUNK_SIZE);
|
||||
std::streamsize n = in.gcount();
|
||||
poco_assert_dbg (n == COMPRESS_CHUNK_SIZE);
|
||||
_out.write(buffer.begin(), n);
|
||||
remaining -= COMPRESS_CHUNK_SIZE;
|
||||
}
|
||||
else
|
||||
{
|
||||
in.read(buffer.begin(), remaining);
|
||||
std::streamsize n = in.gcount();
|
||||
poco_assert_dbg (n == remaining);
|
||||
_out.write(buffer.begin(), n);
|
||||
remaining = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
//write optional block afterwards
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
{
|
||||
ZipDataInfo info(in, false);
|
||||
_out.write(info.getRawHeader(), static_cast<std::streamsize>(info.getFullHeaderSize()));
|
||||
}
|
||||
hdr.setStartPos(localHeaderOffset); // reset again now that compressed Size is known
|
||||
_offset = hdr.getEndPos();
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
_offset += ZipDataInfo::getFullHeaderSize();
|
||||
_files.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), hdr));
|
||||
poco_assert (_out);
|
||||
ZipFileInfo nfo(hdr);
|
||||
nfo.setOffset(localHeaderOffset);
|
||||
_infos.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), nfo));
|
||||
EDone.notify(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addFile(std::istream& in, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
if (!fileName.isFile())
|
||||
throw ZipException("Not a file: "+ fileName.toString());
|
||||
|
||||
if (fileName.depth() > 1)
|
||||
{
|
||||
addDirectory(fileName.parent(), lastModifiedAt);
|
||||
}
|
||||
addEntry(in, lastModifiedAt, fileName, cm, cl);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addFile(const Poco::Path& file, const Poco::Path& fileName, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
Poco::File aFile(file);
|
||||
Poco::File::FileSize size = aFile.getSize();
|
||||
if (size < 16)
|
||||
{
|
||||
cm = ZipCommon::CM_STORE;
|
||||
cl = ZipCommon::CL_NORMAL;
|
||||
}
|
||||
std::ifstream in(file.toString().c_str(), std::ios::binary);
|
||||
if (!in.good())
|
||||
throw ZipException("Invalid input stream for " + aFile.path());
|
||||
if (fileName.depth() > 1)
|
||||
{
|
||||
Poco::File aParent(file.parent());
|
||||
addDirectory(fileName.parent(), aParent.getLastModified());
|
||||
}
|
||||
|
||||
addFile(in, aFile.getLastModified(), fileName, cm, cl);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addDirectory(const Poco::Path& entryName, const Poco::DateTime& lastModifiedAt)
|
||||
{
|
||||
if (!entryName.isDirectory())
|
||||
throw ZipException("Not a directory: "+ entryName.toString());
|
||||
|
||||
std::string fileStr = entryName.toString(Poco::Path::PATH_UNIX);
|
||||
if (_files.find(fileStr) != _files.end())
|
||||
return; // ignore duplicate add
|
||||
if (_files.size() >= 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
if (fileStr == "/")
|
||||
throw ZipException("Illegal entry name /");
|
||||
if (fileStr.empty())
|
||||
throw ZipException("Illegal empty entry name");
|
||||
if (fileStr.find(ZipCommon::ILLEGAL_PATH) != std::string::npos)
|
||||
throw ZipException("Illegal entry name " + fileStr + " containing " + ZipCommon::ILLEGAL_PATH);
|
||||
|
||||
if (entryName.depth() > 1)
|
||||
{
|
||||
addDirectory(entryName.parent(), lastModifiedAt);
|
||||
}
|
||||
|
||||
std::streamoff localHeaderOffset = _offset;
|
||||
ZipCommon::CompressionMethod cm = ZipCommon::CM_STORE;
|
||||
ZipCommon::CompressionLevel cl = ZipCommon::CL_NORMAL;
|
||||
ZipLocalFileHeader hdr(entryName, lastModifiedAt, cm, cl);
|
||||
hdr.setStartPos(localHeaderOffset);
|
||||
ZipOutputStream zipOut(_out, hdr, _seekableOut);
|
||||
zipOut.close();
|
||||
hdr.setStartPos(localHeaderOffset); // reset again now that compressed Size is known
|
||||
_offset = hdr.getEndPos();
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
_offset += ZipDataInfo::getFullHeaderSize();
|
||||
_files.insert(std::make_pair(entryName.toString(Poco::Path::PATH_UNIX), hdr));
|
||||
poco_assert (_out);
|
||||
ZipFileInfo nfo(hdr);
|
||||
nfo.setOffset(localHeaderOffset);
|
||||
_infos.insert(std::make_pair(entryName.toString(Poco::Path::PATH_UNIX), nfo));
|
||||
EDone.notify(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addRecursive(const Poco::Path& entry, ZipCommon::CompressionLevel cl, bool excludeRoot, const Poco::Path& name)
|
||||
{
|
||||
Poco::File aFile(entry);
|
||||
if (!aFile.isDirectory())
|
||||
throw ZipException("Not a directory: "+ entry.toString());
|
||||
Poco::Path aName(name);
|
||||
aName.makeDirectory();
|
||||
if (!excludeRoot)
|
||||
{
|
||||
if (aName.depth() == 0)
|
||||
{
|
||||
Poco::Path tmp(entry);
|
||||
tmp.makeAbsolute(); // eliminate ../
|
||||
aName = Poco::Path(tmp[tmp.depth()-1]);
|
||||
aName.makeDirectory();
|
||||
}
|
||||
|
||||
addDirectory(aName, aFile.getLastModified());
|
||||
}
|
||||
|
||||
// iterate over children
|
||||
std::vector<std::string> children;
|
||||
aFile.list(children);
|
||||
std::vector<std::string>::const_iterator it = children.begin();
|
||||
std::vector<std::string>::const_iterator itEnd = children.end();
|
||||
for (; it != itEnd; ++it)
|
||||
{
|
||||
Poco::Path realFile(entry, *it);
|
||||
Poco::Path renamedFile(aName, *it);
|
||||
Poco::File aFile(realFile);
|
||||
if (aFile.isDirectory())
|
||||
{
|
||||
realFile.makeDirectory();
|
||||
renamedFile.makeDirectory();
|
||||
addRecursive(realFile, cl, false, renamedFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
realFile.makeFile();
|
||||
renamedFile.makeFile();
|
||||
addFile(realFile, renamedFile, ZipCommon::CM_DEFLATE, cl);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
ZipArchive Compress::close()
|
||||
{
|
||||
if (!_dirs.empty())
|
||||
return ZipArchive(_files, _infos, _dirs);
|
||||
|
||||
poco_assert (_infos.size() == _files.size());
|
||||
poco_assert (_files.size() < 65536);
|
||||
Poco::UInt32 centralDirStart = _offset;
|
||||
Poco::UInt32 centralDirSize = 0;
|
||||
// write all infos
|
||||
ZipArchive::FileInfos::const_iterator it = _infos.begin();
|
||||
ZipArchive::FileInfos::const_iterator itEnd = _infos.end();
|
||||
for (; it != itEnd; ++it)
|
||||
{
|
||||
const ZipFileInfo& nfo = it->second;
|
||||
std::string info(nfo.createHeader());
|
||||
_out.write(info.c_str(), static_cast<std::streamsize>(info.size()));
|
||||
Poco::UInt32 entrySize = static_cast<Poco::UInt32>(info.size());
|
||||
centralDirSize += entrySize;
|
||||
_offset += entrySize;
|
||||
}
|
||||
poco_assert (_out);
|
||||
|
||||
|
||||
Poco::UInt16 numEntries = static_cast<Poco::UInt16>(_infos.size());
|
||||
ZipArchiveInfo central;
|
||||
central.setCentralDirectorySize(centralDirSize);
|
||||
central.setNumberOfEntries(numEntries);
|
||||
central.setTotalNumberOfEntries(numEntries);
|
||||
central.setHeaderOffset(centralDirStart);
|
||||
std::string centr(central.createHeader());
|
||||
_out.write(centr.c_str(), static_cast<std::streamsize>(centr.size()));
|
||||
_out.flush();
|
||||
_dirs.insert(std::make_pair(0, central));
|
||||
return ZipArchive(_files, _infos, _dirs);
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
//
|
||||
// Compress.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/src/Compress.cpp#8 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Compress
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/Compress.h"
|
||||
#include "Poco/Zip/ZipLocalFileHeader.h"
|
||||
#include "Poco/Zip/ZipStream.h"
|
||||
#include "Poco/Zip/ZipArchiveInfo.h"
|
||||
#include "Poco/Zip/ZipDataInfo.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/StreamCopier.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/FileStream.h"
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
Compress::Compress(std::ostream& out, bool seekableOut):
|
||||
_out(out),
|
||||
_seekableOut(seekableOut),
|
||||
_files(),
|
||||
_infos(),
|
||||
_dirs(),
|
||||
_offset(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
Compress::~Compress()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void Compress::addEntry(std::istream& in, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
std::string fn = ZipUtil::validZipEntryFileName(fileName);
|
||||
|
||||
if (_files.size() >= 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
if (!in.good())
|
||||
throw ZipException("Invalid input stream");
|
||||
|
||||
std::streamoff localHeaderOffset = _offset;
|
||||
ZipLocalFileHeader hdr(fileName, lastModifiedAt, cm, cl);
|
||||
hdr.setStartPos(localHeaderOffset);
|
||||
|
||||
ZipOutputStream zipOut(_out, hdr, _seekableOut);
|
||||
Poco::StreamCopier::copyStream(in, zipOut);
|
||||
zipOut.close();
|
||||
hdr.setStartPos(localHeaderOffset); // reset again now that compressed Size is known
|
||||
_offset = hdr.getEndPos();
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
_offset += ZipDataInfo::getFullHeaderSize();
|
||||
_files.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), hdr));
|
||||
poco_assert (_out);
|
||||
ZipFileInfo nfo(hdr);
|
||||
nfo.setOffset(localHeaderOffset);
|
||||
_infos.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), nfo));
|
||||
EDone.notify(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addFileRaw(std::istream& in, const ZipLocalFileHeader& h, const Poco::Path& fileName)
|
||||
{
|
||||
std::string fn = ZipUtil::validZipEntryFileName(fileName);
|
||||
//bypass the header of the input stream and point to the first byte of the data payload
|
||||
in.seekg(h.getDataStartPos(), std::ios_base::beg);
|
||||
|
||||
if (_files.size() >= 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
if (!in.good())
|
||||
throw ZipException("Invalid input stream");
|
||||
|
||||
std::streamoff localHeaderOffset = _offset;
|
||||
ZipLocalFileHeader hdr(h);
|
||||
hdr.setFileName(fn, h.isDirectory());
|
||||
hdr.setStartPos(localHeaderOffset);
|
||||
//bypass zipoutputstream
|
||||
//write the header directly
|
||||
std::string header = hdr.createHeader();
|
||||
_out.write(header.c_str(), static_cast<std::streamsize>(header.size()));
|
||||
// now fwd the payload to _out in chunks of size CHUNKSIZE
|
||||
Poco::UInt32 totalSize = hdr.getCompressedSize();
|
||||
if (totalSize > 0)
|
||||
{
|
||||
Poco::Buffer<char> buffer(COMPRESS_CHUNK_SIZE);
|
||||
Poco::UInt32 remaining = totalSize;
|
||||
while(remaining > 0)
|
||||
{
|
||||
if (remaining > COMPRESS_CHUNK_SIZE)
|
||||
{
|
||||
in.read(buffer.begin(), COMPRESS_CHUNK_SIZE);
|
||||
std::streamsize n = in.gcount();
|
||||
poco_assert_dbg (n == COMPRESS_CHUNK_SIZE);
|
||||
_out.write(buffer.begin(), n);
|
||||
remaining -= COMPRESS_CHUNK_SIZE;
|
||||
}
|
||||
else
|
||||
{
|
||||
in.read(buffer.begin(), remaining);
|
||||
std::streamsize n = in.gcount();
|
||||
poco_assert_dbg (n == remaining);
|
||||
_out.write(buffer.begin(), n);
|
||||
remaining = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
//write optional block afterwards
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
{
|
||||
ZipDataInfo info(in, false);
|
||||
_out.write(info.getRawHeader(), static_cast<std::streamsize>(info.getFullHeaderSize()));
|
||||
}
|
||||
hdr.setStartPos(localHeaderOffset); // reset again now that compressed Size is known
|
||||
_offset = hdr.getEndPos();
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
_offset += ZipDataInfo::getFullHeaderSize();
|
||||
_files.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), hdr));
|
||||
poco_assert (_out);
|
||||
ZipFileInfo nfo(hdr);
|
||||
nfo.setOffset(localHeaderOffset);
|
||||
_infos.insert(std::make_pair(fileName.toString(Poco::Path::PATH_UNIX), nfo));
|
||||
EDone.notify(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addFile(std::istream& in, const Poco::DateTime& lastModifiedAt, const Poco::Path& fileName, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
if (!fileName.isFile())
|
||||
throw ZipException("Not a file: "+ fileName.toString());
|
||||
|
||||
if (fileName.depth() > 1)
|
||||
{
|
||||
addDirectory(fileName.parent(), lastModifiedAt);
|
||||
}
|
||||
addEntry(in, lastModifiedAt, fileName, cm, cl);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addFile(const Poco::Path& file, const Poco::Path& fileName, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
Poco::File aFile(file);
|
||||
Poco::File::FileSize size = aFile.getSize();
|
||||
if (size < 16)
|
||||
{
|
||||
cm = ZipCommon::CM_STORE;
|
||||
cl = ZipCommon::CL_NORMAL;
|
||||
}
|
||||
Poco::FileInputStream in(file.toString());
|
||||
if (fileName.depth() > 1)
|
||||
{
|
||||
Poco::File aParent(file.parent());
|
||||
addDirectory(fileName.parent(), aParent.getLastModified());
|
||||
}
|
||||
addFile(in, aFile.getLastModified(), fileName, cm, cl);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addDirectory(const Poco::Path& entryName, const Poco::DateTime& lastModifiedAt)
|
||||
{
|
||||
if (!entryName.isDirectory())
|
||||
throw ZipException("Not a directory: "+ entryName.toString());
|
||||
|
||||
std::string fileStr = entryName.toString(Poco::Path::PATH_UNIX);
|
||||
if (_files.find(fileStr) != _files.end())
|
||||
return; // ignore duplicate add
|
||||
if (_files.size() >= 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
if (fileStr == "/")
|
||||
throw ZipException("Illegal entry name /");
|
||||
if (fileStr.empty())
|
||||
throw ZipException("Illegal empty entry name");
|
||||
if (fileStr.find(ZipCommon::ILLEGAL_PATH) != std::string::npos)
|
||||
throw ZipException("Illegal entry name " + fileStr + " containing " + ZipCommon::ILLEGAL_PATH);
|
||||
|
||||
if (entryName.depth() > 1)
|
||||
{
|
||||
addDirectory(entryName.parent(), lastModifiedAt);
|
||||
}
|
||||
|
||||
std::streamoff localHeaderOffset = _offset;
|
||||
ZipCommon::CompressionMethod cm = ZipCommon::CM_STORE;
|
||||
ZipCommon::CompressionLevel cl = ZipCommon::CL_NORMAL;
|
||||
ZipLocalFileHeader hdr(entryName, lastModifiedAt, cm, cl);
|
||||
hdr.setStartPos(localHeaderOffset);
|
||||
ZipOutputStream zipOut(_out, hdr, _seekableOut);
|
||||
zipOut.close();
|
||||
hdr.setStartPos(localHeaderOffset); // reset again now that compressed Size is known
|
||||
_offset = hdr.getEndPos();
|
||||
if (hdr.searchCRCAndSizesAfterData())
|
||||
_offset += ZipDataInfo::getFullHeaderSize();
|
||||
_files.insert(std::make_pair(entryName.toString(Poco::Path::PATH_UNIX), hdr));
|
||||
poco_assert (_out);
|
||||
ZipFileInfo nfo(hdr);
|
||||
nfo.setOffset(localHeaderOffset);
|
||||
_infos.insert(std::make_pair(entryName.toString(Poco::Path::PATH_UNIX), nfo));
|
||||
EDone.notify(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
void Compress::addRecursive(const Poco::Path& entry, ZipCommon::CompressionLevel cl, bool excludeRoot, const Poco::Path& name)
|
||||
{
|
||||
Poco::File aFile(entry);
|
||||
if (!aFile.isDirectory())
|
||||
throw ZipException("Not a directory: "+ entry.toString());
|
||||
Poco::Path aName(name);
|
||||
aName.makeDirectory();
|
||||
if (!excludeRoot)
|
||||
{
|
||||
if (aName.depth() == 0)
|
||||
{
|
||||
Poco::Path tmp(entry);
|
||||
tmp.makeAbsolute(); // eliminate ../
|
||||
aName = Poco::Path(tmp[tmp.depth()-1]);
|
||||
aName.makeDirectory();
|
||||
}
|
||||
|
||||
addDirectory(aName, aFile.getLastModified());
|
||||
}
|
||||
|
||||
// iterate over children
|
||||
std::vector<std::string> children;
|
||||
aFile.list(children);
|
||||
std::vector<std::string>::const_iterator it = children.begin();
|
||||
std::vector<std::string>::const_iterator itEnd = children.end();
|
||||
for (; it != itEnd; ++it)
|
||||
{
|
||||
Poco::Path realFile(entry, *it);
|
||||
Poco::Path renamedFile(aName, *it);
|
||||
Poco::File aFile(realFile);
|
||||
if (aFile.isDirectory())
|
||||
{
|
||||
realFile.makeDirectory();
|
||||
renamedFile.makeDirectory();
|
||||
addRecursive(realFile, cl, false, renamedFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
realFile.makeFile();
|
||||
renamedFile.makeFile();
|
||||
addFile(realFile, renamedFile, ZipCommon::CM_DEFLATE, cl);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
ZipArchive Compress::close()
|
||||
{
|
||||
if (!_dirs.empty())
|
||||
return ZipArchive(_files, _infos, _dirs);
|
||||
|
||||
poco_assert (_infos.size() == _files.size());
|
||||
poco_assert (_files.size() < 65536);
|
||||
Poco::UInt32 centralDirStart = _offset;
|
||||
Poco::UInt32 centralDirSize = 0;
|
||||
// write all infos
|
||||
ZipArchive::FileInfos::const_iterator it = _infos.begin();
|
||||
ZipArchive::FileInfos::const_iterator itEnd = _infos.end();
|
||||
for (; it != itEnd; ++it)
|
||||
{
|
||||
const ZipFileInfo& nfo = it->second;
|
||||
std::string info(nfo.createHeader());
|
||||
_out.write(info.c_str(), static_cast<std::streamsize>(info.size()));
|
||||
Poco::UInt32 entrySize = static_cast<Poco::UInt32>(info.size());
|
||||
centralDirSize += entrySize;
|
||||
_offset += entrySize;
|
||||
}
|
||||
poco_assert (_out);
|
||||
|
||||
|
||||
Poco::UInt16 numEntries = static_cast<Poco::UInt16>(_infos.size());
|
||||
ZipArchiveInfo central;
|
||||
central.setCentralDirectorySize(centralDirSize);
|
||||
central.setNumberOfEntries(numEntries);
|
||||
central.setTotalNumberOfEntries(numEntries);
|
||||
central.setHeaderOffset(centralDirStart);
|
||||
if (!_comment.empty() && _comment.size() <= 65535)
|
||||
{
|
||||
central.setZipComment(_comment);
|
||||
}
|
||||
std::string centr(central.createHeader());
|
||||
_out.write(centr.c_str(), static_cast<std::streamsize>(centr.size()));
|
||||
_out.flush();
|
||||
_dirs.insert(std::make_pair(0, central));
|
||||
return ZipArchive(_files, _infos, _dirs);
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
@ -1,193 +1,187 @@
|
||||
//
|
||||
// Decompress.cpp
|
||||
//
|
||||
//
|
||||
// Decompress.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/src/Decompress.cpp#6 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Decompress
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/Decompress.h"
|
||||
#include "Poco/Zip/ZipLocalFileHeader.h"
|
||||
#include "Poco/Zip/ZipArchive.h"
|
||||
#include "Poco/Zip/ZipStream.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/Exception.h"
|
||||
#include "Poco/StreamCopier.h"
|
||||
#include "Poco/Delegate.h"
|
||||
#include <fstream>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
Decompress::Decompress(std::istream& in, const Poco::Path& outputDir, bool flattenDirs, bool keepIncompleteFiles):
|
||||
_in(in),
|
||||
_outDir(outputDir),
|
||||
_flattenDirs(flattenDirs),
|
||||
_keepIncompleteFiles(keepIncompleteFiles),
|
||||
_mapping()
|
||||
{
|
||||
_outDir.makeAbsolute();
|
||||
_outDir.makeDirectory();
|
||||
poco_assert (_in.good());
|
||||
Poco::File tmp(_outDir);
|
||||
if (!tmp.exists())
|
||||
{
|
||||
tmp.createDirectories();
|
||||
}
|
||||
if (!tmp.isDirectory())
|
||||
throw Poco::IOException("Failed to create/open directory: " + _outDir.toString());
|
||||
EOk += Poco::Delegate<Decompress, std::pair<const ZipLocalFileHeader, const Poco::Path> >(this, &Decompress::onOk);
|
||||
|
||||
}
|
||||
|
||||
|
||||
Decompress::~Decompress()
|
||||
{
|
||||
EOk -= Poco::Delegate<Decompress, std::pair<const ZipLocalFileHeader, const Poco::Path> >(this, &Decompress::onOk);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive Decompress::decompressAllFiles()
|
||||
{
|
||||
poco_assert (_mapping.empty());
|
||||
ZipArchive arch(_in, *this);
|
||||
return arch;
|
||||
}
|
||||
|
||||
|
||||
bool Decompress::handleZipEntry(std::istream& zipStream, const ZipLocalFileHeader& hdr)
|
||||
{
|
||||
if (hdr.isDirectory())
|
||||
{
|
||||
// directory have 0 size, nth to read
|
||||
if (!_flattenDirs)
|
||||
{
|
||||
std::string dirName = hdr.getFileName();
|
||||
if (dirName.find(ZipCommon::ILLEGAL_PATH) != std::string::npos)
|
||||
throw ZipException("Illegal entry name " + dirName + " containing " + ZipCommon::ILLEGAL_PATH);
|
||||
Poco::Path dir(_outDir, dirName);
|
||||
dir.makeDirectory();
|
||||
Poco::File aFile(dir);
|
||||
aFile.createDirectories();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
try
|
||||
{
|
||||
std::string fileName = hdr.getFileName();
|
||||
if (_flattenDirs)
|
||||
{
|
||||
// remove path info
|
||||
Poco::Path p(fileName);
|
||||
p.makeFile();
|
||||
fileName = p.getFileName();
|
||||
}
|
||||
|
||||
if (fileName.find(ZipCommon::ILLEGAL_PATH) != std::string::npos)
|
||||
throw ZipException("Illegal entry name " + fileName + " containing " + ZipCommon::ILLEGAL_PATH);
|
||||
|
||||
Poco::Path file(fileName);
|
||||
file.makeFile();
|
||||
Poco::Path dest(_outDir, file);
|
||||
dest.makeFile();
|
||||
if (dest.depth() > 0)
|
||||
{
|
||||
Poco::File aFile(dest.parent());
|
||||
aFile.createDirectories();
|
||||
}
|
||||
std::ofstream out(dest.toString().c_str(), std::ios::binary);
|
||||
if (!out)
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "Failed to open output stream " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
ZipInputStream inp(zipStream, hdr, false);
|
||||
Poco::StreamCopier::copyStream(inp, out);
|
||||
out.close();
|
||||
Poco::File aFile(file);
|
||||
if (!aFile.exists() || !aFile.isFile())
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "Failed to create output stream " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!inp.crcValid())
|
||||
{
|
||||
if (!_keepIncompleteFiles)
|
||||
aFile.remove();
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "CRC mismatch. Corrupt file: " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
// cannot check against hdr.getUnCompressedSize if CRC and size are not set in hdr but in a ZipDataInfo
|
||||
// crc is typically enough to detect errors
|
||||
if (aFile.getSize() != hdr.getUncompressedSize() && !hdr.searchCRCAndSizesAfterData())
|
||||
{
|
||||
if (!_keepIncompleteFiles)
|
||||
aFile.remove();
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "Filesizes do not match. Corrupt file: " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
std::pair<const ZipLocalFileHeader, const Poco::Path> tmp = std::make_pair(hdr, file);
|
||||
EOk.notify(this, tmp);
|
||||
}
|
||||
catch (Poco::Exception& e)
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, std::string("Exception: " + e.displayText()));
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, std::string("Unknown Exception"));
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void Decompress::onOk(const void*, std::pair<const ZipLocalFileHeader, const Poco::Path>& val)
|
||||
{
|
||||
_mapping.insert(std::make_pair(val.first.getFileName(), val.second));
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: Decompress
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/Decompress.h"
|
||||
#include "Poco/Zip/ZipLocalFileHeader.h"
|
||||
#include "Poco/Zip/ZipArchive.h"
|
||||
#include "Poco/Zip/ZipStream.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/Exception.h"
|
||||
#include "Poco/StreamCopier.h"
|
||||
#include "Poco/Delegate.h"
|
||||
#include "Poco/FileStream.h"
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
Decompress::Decompress(std::istream& in, const Poco::Path& outputDir, bool flattenDirs, bool keepIncompleteFiles):
|
||||
_in(in),
|
||||
_outDir(outputDir),
|
||||
_flattenDirs(flattenDirs),
|
||||
_keepIncompleteFiles(keepIncompleteFiles),
|
||||
_mapping()
|
||||
{
|
||||
_outDir.makeAbsolute();
|
||||
_outDir.makeDirectory();
|
||||
poco_assert (_in.good());
|
||||
Poco::File tmp(_outDir);
|
||||
if (!tmp.exists())
|
||||
{
|
||||
tmp.createDirectories();
|
||||
}
|
||||
if (!tmp.isDirectory())
|
||||
throw Poco::IOException("Failed to create/open directory: " + _outDir.toString());
|
||||
EOk += Poco::Delegate<Decompress, std::pair<const ZipLocalFileHeader, const Poco::Path> >(this, &Decompress::onOk);
|
||||
|
||||
}
|
||||
|
||||
|
||||
Decompress::~Decompress()
|
||||
{
|
||||
EOk -= Poco::Delegate<Decompress, std::pair<const ZipLocalFileHeader, const Poco::Path> >(this, &Decompress::onOk);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive Decompress::decompressAllFiles()
|
||||
{
|
||||
poco_assert (_mapping.empty());
|
||||
ZipArchive arch(_in, *this);
|
||||
return arch;
|
||||
}
|
||||
|
||||
|
||||
bool Decompress::handleZipEntry(std::istream& zipStream, const ZipLocalFileHeader& hdr)
|
||||
{
|
||||
if (hdr.isDirectory())
|
||||
{
|
||||
// directory have 0 size, nth to read
|
||||
if (!_flattenDirs)
|
||||
{
|
||||
std::string dirName = hdr.getFileName();
|
||||
if (dirName.find(ZipCommon::ILLEGAL_PATH) != std::string::npos)
|
||||
throw ZipException("Illegal entry name " + dirName + " containing " + ZipCommon::ILLEGAL_PATH);
|
||||
Poco::Path dir(_outDir, dirName);
|
||||
dir.makeDirectory();
|
||||
Poco::File aFile(dir);
|
||||
aFile.createDirectories();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
try
|
||||
{
|
||||
std::string fileName = hdr.getFileName();
|
||||
if (_flattenDirs)
|
||||
{
|
||||
// remove path info
|
||||
Poco::Path p(fileName);
|
||||
p.makeFile();
|
||||
fileName = p.getFileName();
|
||||
}
|
||||
|
||||
if (fileName.find(ZipCommon::ILLEGAL_PATH) != std::string::npos)
|
||||
throw ZipException("Illegal entry name " + fileName + " containing " + ZipCommon::ILLEGAL_PATH);
|
||||
|
||||
Poco::Path file(fileName);
|
||||
file.makeFile();
|
||||
Poco::Path dest(_outDir, file);
|
||||
dest.makeFile();
|
||||
if (dest.depth() > 0)
|
||||
{
|
||||
Poco::File aFile(dest.parent());
|
||||
aFile.createDirectories();
|
||||
}
|
||||
Poco::FileOutputStream out(dest.toString());
|
||||
ZipInputStream inp(zipStream, hdr, false);
|
||||
Poco::StreamCopier::copyStream(inp, out);
|
||||
out.close();
|
||||
Poco::File aFile(dest.toString());
|
||||
if (!aFile.exists() || !aFile.isFile())
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "Failed to create output stream " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!inp.crcValid())
|
||||
{
|
||||
if (!_keepIncompleteFiles)
|
||||
aFile.remove();
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "CRC mismatch. Corrupt file: " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
// cannot check against hdr.getUnCompressedSize if CRC and size are not set in hdr but in a ZipDataInfo
|
||||
// crc is typically enough to detect errors
|
||||
if (aFile.getSize() != hdr.getUncompressedSize() && !hdr.searchCRCAndSizesAfterData())
|
||||
{
|
||||
if (!_keepIncompleteFiles)
|
||||
aFile.remove();
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, "Filesizes do not match. Corrupt file: " + dest.toString());
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
std::pair<const ZipLocalFileHeader, const Poco::Path> tmp = std::make_pair(hdr, file);
|
||||
EOk.notify(this, tmp);
|
||||
}
|
||||
catch (Poco::Exception& e)
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, std::string("Exception: " + e.displayText()));
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
std::pair<const ZipLocalFileHeader, const std::string> tmp = std::make_pair(hdr, std::string("Unknown Exception"));
|
||||
EError.notify(this, tmp);
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void Decompress::onOk(const void*, std::pair<const ZipLocalFileHeader, const Poco::Path>& val)
|
||||
{
|
||||
_mapping.insert(std::make_pair(val.first.getFileName(), val.second));
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
@ -1,121 +1,129 @@
|
||||
//
|
||||
// ZipArchive.cpp
|
||||
//
|
||||
//
|
||||
// ZipArchive.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/src/ZipArchive.cpp#8 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchive
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/ZipArchive.h"
|
||||
#include "Poco/Zip/SkipCallback.h"
|
||||
#include "Poco/Exception.h"
|
||||
#include <cstring>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
ZipArchive::ZipArchive(std::istream& in):
|
||||
_entries(),
|
||||
_infos(),
|
||||
_disks()
|
||||
{
|
||||
poco_assert_dbg (in);
|
||||
SkipCallback skip;
|
||||
parse(in, skip);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive::ZipArchive(const FileHeaders& entries, const FileInfos& infos, const DirectoryInfos& dirs):
|
||||
_entries(entries),
|
||||
_infos(infos),
|
||||
_disks(dirs)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
ZipArchive::ZipArchive(std::istream& in, ParseCallback& pc):
|
||||
_entries(),
|
||||
_infos(),
|
||||
_disks()
|
||||
{
|
||||
poco_assert_dbg (in);
|
||||
parse(in, pc);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive::~ZipArchive()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ZipArchive::parse(std::istream& in, ParseCallback& pc)
|
||||
{
|
||||
// read 4 bytes
|
||||
while (in.good() && !in.eof())
|
||||
{
|
||||
char header[ZipCommon::HEADER_SIZE]={'\x00', '\x00', '\x00', '\x00'};
|
||||
in.read(header, ZipCommon::HEADER_SIZE);
|
||||
if (in.eof())
|
||||
return;
|
||||
if (std::memcmp(header, ZipLocalFileHeader::HEADER, ZipCommon::HEADER_SIZE) == 0)
|
||||
{
|
||||
ZipLocalFileHeader entry(in, true, pc);
|
||||
poco_assert (_entries.insert(std::make_pair(entry.getFileName(), entry)).second);
|
||||
}
|
||||
else if (std::memcmp(header, ZipFileInfo::HEADER, ZipCommon::HEADER_SIZE) == 0)
|
||||
{
|
||||
ZipFileInfo info(in, true);
|
||||
FileHeaders::iterator it = _entries.find(info.getFileName());
|
||||
if (it != _entries.end())
|
||||
{
|
||||
it->second.setStartPos(info.getRelativeOffsetOfLocalHeader());
|
||||
}
|
||||
poco_assert (_infos.insert(std::make_pair(info.getFileName(), info)).second);
|
||||
}
|
||||
else if (std::memcmp(header, ZipArchiveInfo::HEADER, ZipCommon::HEADER_SIZE) == 0)
|
||||
{
|
||||
ZipArchiveInfo nfo(in, true);
|
||||
poco_assert (_disks.insert(std::make_pair(nfo.getDiskNumber(), nfo)).second);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_disks.empty())
|
||||
throw Poco::IllegalStateException("Illegal header in zip file");
|
||||
else
|
||||
throw Poco::IllegalStateException("Garbage after directory header");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchive
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/ZipArchive.h"
|
||||
#include "Poco/Zip/SkipCallback.h"
|
||||
#include "Poco/Exception.h"
|
||||
#include <cstring>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
ZipArchive::ZipArchive(std::istream& in):
|
||||
_entries(),
|
||||
_infos(),
|
||||
_disks()
|
||||
{
|
||||
poco_assert_dbg (in);
|
||||
SkipCallback skip;
|
||||
parse(in, skip);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive::ZipArchive(const FileHeaders& entries, const FileInfos& infos, const DirectoryInfos& dirs):
|
||||
_entries(entries),
|
||||
_infos(infos),
|
||||
_disks(dirs)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
ZipArchive::ZipArchive(std::istream& in, ParseCallback& pc):
|
||||
_entries(),
|
||||
_infos(),
|
||||
_disks()
|
||||
{
|
||||
poco_assert_dbg (in);
|
||||
parse(in, pc);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive::~ZipArchive()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ZipArchive::parse(std::istream& in, ParseCallback& pc)
|
||||
{
|
||||
// read 4 bytes
|
||||
while (in.good() && !in.eof())
|
||||
{
|
||||
char header[ZipCommon::HEADER_SIZE]={'\x00', '\x00', '\x00', '\x00'};
|
||||
in.read(header, ZipCommon::HEADER_SIZE);
|
||||
if (in.eof())
|
||||
return;
|
||||
if (std::memcmp(header, ZipLocalFileHeader::HEADER, ZipCommon::HEADER_SIZE) == 0)
|
||||
{
|
||||
ZipLocalFileHeader entry(in, true, pc);
|
||||
poco_assert (_entries.insert(std::make_pair(entry.getFileName(), entry)).second);
|
||||
}
|
||||
else if (std::memcmp(header, ZipFileInfo::HEADER, ZipCommon::HEADER_SIZE) == 0)
|
||||
{
|
||||
ZipFileInfo info(in, true);
|
||||
FileHeaders::iterator it = _entries.find(info.getFileName());
|
||||
if (it != _entries.end())
|
||||
{
|
||||
it->second.setStartPos(info.getRelativeOffsetOfLocalHeader());
|
||||
}
|
||||
poco_assert (_infos.insert(std::make_pair(info.getFileName(), info)).second);
|
||||
}
|
||||
else if (std::memcmp(header, ZipArchiveInfo::HEADER, ZipCommon::HEADER_SIZE) == 0)
|
||||
{
|
||||
ZipArchiveInfo nfo(in, true);
|
||||
poco_assert (_disks.insert(std::make_pair(nfo.getDiskNumber(), nfo)).second);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_disks.empty())
|
||||
throw Poco::IllegalStateException("Illegal header in zip file");
|
||||
else
|
||||
throw Poco::IllegalStateException("Garbage after directory header");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const std::string& ZipArchive::getZipComment() const
|
||||
{
|
||||
// It seems that only the "first" disk is populated (look at Compress::close()), so getting the first ZipArchiveInfo
|
||||
DirectoryInfos::const_iterator it = _disks.begin();
|
||||
return it->second.getZipComment();
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
@ -1,106 +1,121 @@
|
||||
//
|
||||
// ZipArchiveInfo.cpp
|
||||
//
|
||||
//
|
||||
// ZipArchiveInfo.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/src/ZipArchiveInfo.cpp#7 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchiveInfo
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/ZipArchiveInfo.h"
|
||||
#include "Poco/Buffer.h"
|
||||
#include <istream>
|
||||
#include <cstring>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
const char ZipArchiveInfo::HEADER[ZipCommon::HEADER_SIZE] = {'\x50', '\x4b', '\x05', '\x06'};
|
||||
|
||||
|
||||
ZipArchiveInfo::ZipArchiveInfo(std::istream& in, bool assumeHeaderRead):
|
||||
_rawInfo(),
|
||||
_startPos(in.tellg()),
|
||||
_comment()
|
||||
{
|
||||
if (assumeHeaderRead)
|
||||
_startPos -= ZipCommon::HEADER_SIZE;
|
||||
parse(in, assumeHeaderRead);
|
||||
}
|
||||
|
||||
ZipArchiveInfo::ZipArchiveInfo():
|
||||
_rawInfo(),
|
||||
_startPos(0),
|
||||
_comment()
|
||||
{
|
||||
std::memset(_rawInfo, 0, FULLHEADER_SIZE);
|
||||
std::memcpy(_rawInfo, HEADER, ZipCommon::HEADER_SIZE);
|
||||
}
|
||||
|
||||
|
||||
ZipArchiveInfo::~ZipArchiveInfo()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ZipArchiveInfo::parse(std::istream& inp, bool assumeHeaderRead)
|
||||
{
|
||||
if (!assumeHeaderRead)
|
||||
{
|
||||
inp.read(_rawInfo, ZipCommon::HEADER_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
std::memcpy(_rawInfo, HEADER, ZipCommon::HEADER_SIZE);
|
||||
}
|
||||
poco_assert (std::memcmp(_rawInfo, HEADER, ZipCommon::HEADER_SIZE) == 0);
|
||||
// read the rest of the header
|
||||
inp.read(_rawInfo + ZipCommon::HEADER_SIZE, FULLHEADER_SIZE - ZipCommon::HEADER_SIZE);
|
||||
Poco::UInt16 len = getZipCommentSize();
|
||||
if (len > 0)
|
||||
{
|
||||
Poco::Buffer<char> buf(len);
|
||||
inp.read(buf.begin(), len);
|
||||
_comment = std::string(buf.begin(), len);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
std::string ZipArchiveInfo::createHeader() const
|
||||
{
|
||||
std::string result(_rawInfo, FULLHEADER_SIZE);
|
||||
result.append(_comment);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Zip
|
||||
// Module: ZipArchiveInfo
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/ZipArchiveInfo.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/Buffer.h"
|
||||
#include <istream>
|
||||
#include <cstring>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
const char ZipArchiveInfo::HEADER[ZipCommon::HEADER_SIZE] = {'\x50', '\x4b', '\x05', '\x06'};
|
||||
|
||||
|
||||
ZipArchiveInfo::ZipArchiveInfo(std::istream& in, bool assumeHeaderRead):
|
||||
_rawInfo(),
|
||||
_startPos(in.tellg()),
|
||||
_comment()
|
||||
{
|
||||
if (assumeHeaderRead)
|
||||
_startPos -= ZipCommon::HEADER_SIZE;
|
||||
parse(in, assumeHeaderRead);
|
||||
}
|
||||
|
||||
ZipArchiveInfo::ZipArchiveInfo():
|
||||
_rawInfo(),
|
||||
_startPos(0),
|
||||
_comment()
|
||||
{
|
||||
std::memset(_rawInfo, 0, FULLHEADER_SIZE);
|
||||
std::memcpy(_rawInfo, HEADER, ZipCommon::HEADER_SIZE);
|
||||
}
|
||||
|
||||
|
||||
ZipArchiveInfo::~ZipArchiveInfo()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ZipArchiveInfo::parse(std::istream& inp, bool assumeHeaderRead)
|
||||
{
|
||||
if (!assumeHeaderRead)
|
||||
{
|
||||
inp.read(_rawInfo, ZipCommon::HEADER_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
std::memcpy(_rawInfo, HEADER, ZipCommon::HEADER_SIZE);
|
||||
}
|
||||
poco_assert (std::memcmp(_rawInfo, HEADER, ZipCommon::HEADER_SIZE) == 0);
|
||||
// read the rest of the header
|
||||
inp.read(_rawInfo + ZipCommon::HEADER_SIZE, FULLHEADER_SIZE - ZipCommon::HEADER_SIZE);
|
||||
Poco::UInt16 len = getZipCommentSize();
|
||||
if (len > 0)
|
||||
{
|
||||
Poco::Buffer<char> buf(len);
|
||||
inp.read(buf.begin(), len);
|
||||
_comment = std::string(buf.begin(), len);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
std::string ZipArchiveInfo::createHeader() const
|
||||
{
|
||||
std::string result(_rawInfo, FULLHEADER_SIZE);
|
||||
result.append(_comment);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
void ZipArchiveInfo::setZipComment(const std::string& comment)
|
||||
{
|
||||
// Confirm string is of valid size
|
||||
if (comment.size() > 65535)
|
||||
throw ZipException("Maximum number of entries for a ZIP file reached: 65535");
|
||||
|
||||
// Change the value of the ZIP Comment Size to reflect new comment size
|
||||
ZipUtil::set16BitValue(static_cast<Poco::UInt16>(comment.size()), _rawInfo, ZIPCOMMENT_LENGTH_POS);
|
||||
|
||||
// Now change our internal comment
|
||||
_comment = comment;
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
@ -1,194 +1,193 @@
|
||||
//
|
||||
// ZipManipulator.cpp
|
||||
//
|
||||
//
|
||||
// ZipManipulator.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/src/ZipManipulator.cpp#4 $
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Manipulation
|
||||
// Module: ZipManipulator
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/ZipManipulator.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/Zip/ZipUtil.h"
|
||||
#include "Poco/Zip/Add.h"
|
||||
#include "Poco/Zip/Delete.h"
|
||||
#include "Poco/Zip/Keep.h"
|
||||
#include "Poco/Zip/Rename.h"
|
||||
#include "Poco/Zip/Replace.h"
|
||||
#include "Poco/Zip/Compress.h"
|
||||
#include "Poco/Delegate.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/FileStream.h"
|
||||
#include <fstream>
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
ZipManipulator::ZipManipulator(const std::string& zipFile, bool backupOriginalFile):
|
||||
_zipFile(zipFile),
|
||||
_backupOriginalFile(backupOriginalFile),
|
||||
_changes(),
|
||||
_in(0)
|
||||
{
|
||||
std::ifstream in(zipFile.c_str(), std::ios::binary);
|
||||
_in = new ZipArchive(in);
|
||||
}
|
||||
|
||||
|
||||
ZipManipulator::~ZipManipulator()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::deleteFile(const std::string& zipPath)
|
||||
{
|
||||
const ZipLocalFileHeader& entry = getForChange(zipPath);
|
||||
addOperation(zipPath, new Delete(entry));
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::replaceFile(const std::string& zipPath, const std::string& localPath)
|
||||
{
|
||||
const ZipLocalFileHeader& entry = getForChange(zipPath);
|
||||
addOperation(zipPath, new Replace(entry, localPath));
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::renameFile(const std::string& zipPath, const std::string& newZipPath)
|
||||
{
|
||||
const ZipLocalFileHeader& entry = getForChange(zipPath);
|
||||
// checked later in Compress too but the earlier one gets the error the better
|
||||
std::string fn = ZipUtil::validZipEntryFileName(newZipPath);
|
||||
addOperation(zipPath, new Rename(entry, fn));
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::addFile(const std::string& zipPath, const std::string& localPath, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
addOperation(zipPath, new Add(zipPath, localPath, cm, cl));
|
||||
}
|
||||
|
||||
|
||||
ZipArchive ZipManipulator::commit()
|
||||
{
|
||||
// write to a tmp file
|
||||
std::string outFile(_zipFile + ".tmp");
|
||||
ZipArchive retVal(compress(outFile));
|
||||
//renaming
|
||||
{
|
||||
Poco::File aFile(_zipFile);
|
||||
if (_backupOriginalFile)
|
||||
{
|
||||
Poco::File tmp(_zipFile+".bak");
|
||||
if (tmp.exists())
|
||||
tmp.remove();
|
||||
aFile.renameTo(_zipFile+".bak");
|
||||
}
|
||||
else
|
||||
aFile.remove();
|
||||
}
|
||||
|
||||
{
|
||||
Poco::File resFile(outFile);
|
||||
Poco::File zipFile(_zipFile);
|
||||
if (zipFile.exists())
|
||||
zipFile.remove();
|
||||
resFile.renameTo(_zipFile);
|
||||
}
|
||||
return retVal;
|
||||
}
|
||||
|
||||
|
||||
const ZipLocalFileHeader& ZipManipulator::getForChange(const std::string& zipPath) const
|
||||
{
|
||||
ZipArchive::FileHeaders::const_iterator it = _in->findHeader(zipPath);
|
||||
if (it == _in->headerEnd())
|
||||
throw ZipManipulationException("entry not found: " + zipPath);
|
||||
|
||||
if (_changes.find(zipPath) != _changes.end())
|
||||
throw ZipManipulationException("A change request exists already for entry " + zipPath);
|
||||
|
||||
return it->second;
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::addOperation(const std::string& zipPath, ZipOperation::Ptr ptrOp)
|
||||
{
|
||||
std::pair<Changes::iterator, bool> result = _changes.insert(std::make_pair(zipPath, ptrOp));
|
||||
if (!result.second)
|
||||
throw ZipManipulationException("A change request exists already for entry " + zipPath);
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::onEDone(const void*, const ZipLocalFileHeader& hdr)
|
||||
{
|
||||
EDone(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive ZipManipulator::compress(const std::string& outFile)
|
||||
{
|
||||
// write to a tmp file
|
||||
Poco::FileInputStream in(_zipFile);
|
||||
Poco::FileOutputStream out(outFile);
|
||||
Compress c(out, true);
|
||||
c.EDone += Poco::Delegate<ZipManipulator, const ZipLocalFileHeader>(this, &ZipManipulator::onEDone);
|
||||
|
||||
ZipArchive::FileHeaders::const_iterator it = _in->headerBegin();
|
||||
for (; it != _in->headerEnd(); ++it)
|
||||
{
|
||||
Changes::iterator itC = _changes.find(it->first);
|
||||
if (itC != _changes.end())
|
||||
{
|
||||
itC->second->execute(c, in);
|
||||
_changes.erase(itC);
|
||||
}
|
||||
else
|
||||
{
|
||||
Keep k(it->second);
|
||||
k.execute(c, in);
|
||||
}
|
||||
}
|
||||
//Remaining files are add operations!
|
||||
Changes::iterator itC = _changes.begin();
|
||||
for (; itC != _changes.end(); ++itC)
|
||||
{
|
||||
itC->second->execute(c, in);
|
||||
}
|
||||
_changes.clear();
|
||||
c.EDone -= Poco::Delegate<ZipManipulator, const ZipLocalFileHeader>(this, &ZipManipulator::onEDone);
|
||||
in.close();
|
||||
return c.close();
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
//
|
||||
// Library: Zip
|
||||
// Package: Manipulation
|
||||
// Module: ZipManipulator
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "Poco/Zip/ZipManipulator.h"
|
||||
#include "Poco/Zip/ZipException.h"
|
||||
#include "Poco/Zip/ZipUtil.h"
|
||||
#include "Poco/Zip/Add.h"
|
||||
#include "Poco/Zip/Delete.h"
|
||||
#include "Poco/Zip/Keep.h"
|
||||
#include "Poco/Zip/Rename.h"
|
||||
#include "Poco/Zip/Replace.h"
|
||||
#include "Poco/Zip/Compress.h"
|
||||
#include "Poco/Delegate.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/FileStream.h"
|
||||
|
||||
|
||||
namespace Poco {
|
||||
namespace Zip {
|
||||
|
||||
|
||||
ZipManipulator::ZipManipulator(const std::string& zipFile, bool backupOriginalFile):
|
||||
_zipFile(zipFile),
|
||||
_backupOriginalFile(backupOriginalFile),
|
||||
_changes(),
|
||||
_in(0)
|
||||
{
|
||||
Poco::FileInputStream in(zipFile);
|
||||
_in = new ZipArchive(in);
|
||||
}
|
||||
|
||||
|
||||
ZipManipulator::~ZipManipulator()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::deleteFile(const std::string& zipPath)
|
||||
{
|
||||
const ZipLocalFileHeader& entry = getForChange(zipPath);
|
||||
addOperation(zipPath, new Delete(entry));
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::replaceFile(const std::string& zipPath, const std::string& localPath)
|
||||
{
|
||||
const ZipLocalFileHeader& entry = getForChange(zipPath);
|
||||
addOperation(zipPath, new Replace(entry, localPath));
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::renameFile(const std::string& zipPath, const std::string& newZipPath)
|
||||
{
|
||||
const ZipLocalFileHeader& entry = getForChange(zipPath);
|
||||
// checked later in Compress too but the earlier one gets the error the better
|
||||
std::string fn = ZipUtil::validZipEntryFileName(newZipPath);
|
||||
addOperation(zipPath, new Rename(entry, fn));
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::addFile(const std::string& zipPath, const std::string& localPath, ZipCommon::CompressionMethod cm, ZipCommon::CompressionLevel cl)
|
||||
{
|
||||
addOperation(zipPath, new Add(zipPath, localPath, cm, cl));
|
||||
}
|
||||
|
||||
|
||||
ZipArchive ZipManipulator::commit()
|
||||
{
|
||||
// write to a tmp file
|
||||
std::string outFile(_zipFile + ".tmp");
|
||||
ZipArchive retVal(compress(outFile));
|
||||
//renaming
|
||||
{
|
||||
Poco::File aFile(_zipFile);
|
||||
if (_backupOriginalFile)
|
||||
{
|
||||
Poco::File tmp(_zipFile+".bak");
|
||||
if (tmp.exists())
|
||||
tmp.remove();
|
||||
aFile.renameTo(_zipFile+".bak");
|
||||
}
|
||||
else
|
||||
aFile.remove();
|
||||
}
|
||||
|
||||
{
|
||||
Poco::File resFile(outFile);
|
||||
Poco::File zipFile(_zipFile);
|
||||
if (zipFile.exists())
|
||||
zipFile.remove();
|
||||
resFile.renameTo(_zipFile);
|
||||
}
|
||||
return retVal;
|
||||
}
|
||||
|
||||
|
||||
const ZipLocalFileHeader& ZipManipulator::getForChange(const std::string& zipPath) const
|
||||
{
|
||||
ZipArchive::FileHeaders::const_iterator it = _in->findHeader(zipPath);
|
||||
if (it == _in->headerEnd())
|
||||
throw ZipManipulationException("entry not found: " + zipPath);
|
||||
|
||||
if (_changes.find(zipPath) != _changes.end())
|
||||
throw ZipManipulationException("A change request exists already for entry " + zipPath);
|
||||
|
||||
return it->second;
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::addOperation(const std::string& zipPath, ZipOperation::Ptr ptrOp)
|
||||
{
|
||||
std::pair<Changes::iterator, bool> result = _changes.insert(std::make_pair(zipPath, ptrOp));
|
||||
if (!result.second)
|
||||
throw ZipManipulationException("A change request exists already for entry " + zipPath);
|
||||
}
|
||||
|
||||
|
||||
void ZipManipulator::onEDone(const void*, const ZipLocalFileHeader& hdr)
|
||||
{
|
||||
EDone(this, hdr);
|
||||
}
|
||||
|
||||
|
||||
ZipArchive ZipManipulator::compress(const std::string& outFile)
|
||||
{
|
||||
// write to a tmp file
|
||||
Poco::FileInputStream in(_zipFile);
|
||||
Poco::FileOutputStream out(outFile);
|
||||
Compress c(out, true);
|
||||
c.EDone += Poco::Delegate<ZipManipulator, const ZipLocalFileHeader>(this, &ZipManipulator::onEDone);
|
||||
|
||||
ZipArchive::FileHeaders::const_iterator it = _in->headerBegin();
|
||||
for (; it != _in->headerEnd(); ++it)
|
||||
{
|
||||
Changes::iterator itC = _changes.find(it->first);
|
||||
if (itC != _changes.end())
|
||||
{
|
||||
itC->second->execute(c, in);
|
||||
_changes.erase(itC);
|
||||
}
|
||||
else
|
||||
{
|
||||
Keep k(it->second);
|
||||
k.execute(c, in);
|
||||
}
|
||||
}
|
||||
//Remaining files are add operations!
|
||||
Changes::iterator itC = _changes.begin();
|
||||
for (; itC != _changes.end(); ++itC)
|
||||
{
|
||||
itC->second->execute(c, in);
|
||||
}
|
||||
_changes.clear();
|
||||
c.EDone -= Poco::Delegate<ZipManipulator, const ZipLocalFileHeader>(this, &ZipManipulator::onEDone);
|
||||
in.close();
|
||||
return c.close();
|
||||
}
|
||||
|
||||
|
||||
} } // namespace Poco::Zip
|
||||
|
317
Zip/testsuite/TestSuite_vs100.vcxproj
Normal file
317
Zip/testsuite/TestSuite_vs100.vcxproj
Normal file
@ -0,0 +1,317 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|Win32">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|Win32">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|Win32">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|Win32">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|Win32">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|Win32">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>TestSuite</ProjectName>
|
||||
<ProjectGuid>{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}</ProjectGuid>
|
||||
<RootNamespace>TestSuite</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Static</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Static</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">bin\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">bin\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">bin\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">bin\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">bin\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">obj\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">false</LinkIncremental>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">TestSuited</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">TestSuited</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">TestSuited</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">TestSuite</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">TestSuite</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">TestSuite</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitd.lib;WinTestRunnerd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\TestSuited.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\TestSuited.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnit.lib;WinTestRunner.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\TestSuite.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmtd.lib;WinTestRunnermtd.lib;iphlpapi.lib;winmm.lib;nafxcwd.lib;libcmtd.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_mt\TestSuited.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>nafxcwd.lib;libcmtd.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\static_mt\TestSuited.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmt.lib;WinTestRunnermt.lib;iphlpapi.lib;winmm.lib;nafxcw.lib;libcmt.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_mt\TestSuite.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>nafxcw.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmdd.lib;WinTestRunnermdd.lib;iphlpapi.lib;winmm.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_md\TestSuited.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin\static_md\TestSuited.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmd.lib;WinTestRunnermd.lib;iphlpapi.lib;winmm.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin\static_md\TestSuite.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\CompressTest.h"/>
|
||||
<ClInclude Include="src\PartialStreamTest.h"/>
|
||||
<ClInclude Include="src\ZipTest.h"/>
|
||||
<ClInclude Include="src\ZipTestSuite.h"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\CompressTest.cpp"/>
|
||||
<ClCompile Include="src\PartialStreamTest.cpp"/>
|
||||
<ClCompile Include="src\ZipTest.cpp"/>
|
||||
<ClCompile Include="src\ZipTestSuite.cpp"/>
|
||||
<ClCompile Include="src\WinDriver.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
60
Zip/testsuite/TestSuite_vs100.vcxproj.filters
Normal file
60
Zip/testsuite/TestSuite_vs100.vcxproj.filters
Normal file
@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Zip">
|
||||
<UniqueIdentifier>{886f20f2-85d3-4204-84ed-f2efd5958124}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Header Files">
|
||||
<UniqueIdentifier>{c8bfd9ea-3134-4ecd-9874-1c5cdd8c5ba1}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Source Files">
|
||||
<UniqueIdentifier>{e95b031f-58d2-4201-a126-4e8a23ccb368}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Suite">
|
||||
<UniqueIdentifier>{9c68186a-7804-498e-8f89-fd20774216a6}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Suite\Header Files">
|
||||
<UniqueIdentifier>{093b1010-de6d-427a-be5d-3274007958f9}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Suite\Source Files">
|
||||
<UniqueIdentifier>{ec06c8aa-0285-4b29-b343-40843db9da4e}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Driver">
|
||||
<UniqueIdentifier>{1560289b-e192-4a93-a14b-1605b2b9e343}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Driver\Source Files">
|
||||
<UniqueIdentifier>{1e0ba164-b186-4018-a175-cc1cf8e2f704}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\CompressTest.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\PartialStreamTest.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\ZipTest.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\ZipTestSuite.h">
|
||||
<Filter>_Suite\Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\CompressTest.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\PartialStreamTest.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipTest.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipTestSuite.cpp">
|
||||
<Filter>_Suite\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\WinDriver.cpp">
|
||||
<Filter>_Driver\Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/testsuite/TestSuite_vs100.vcxproj.user
Normal file
3
Zip/testsuite/TestSuite_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
317
Zip/testsuite/TestSuite_x64_vs100.vcxproj
Normal file
317
Zip/testsuite/TestSuite_x64_vs100.vcxproj
Normal file
@ -0,0 +1,317 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="debug_shared|x64">
|
||||
<Configuration>debug_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_md|x64">
|
||||
<Configuration>debug_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="debug_static_mt|x64">
|
||||
<Configuration>debug_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_shared|x64">
|
||||
<Configuration>release_shared</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_md|x64">
|
||||
<Configuration>release_static_md</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="release_static_mt|x64">
|
||||
<Configuration>release_static_mt</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>TestSuite</ProjectName>
|
||||
<ProjectGuid>{9665FC3C-DB71-4C6C-AAEE-AAFD73CB31E7}</ProjectGuid>
|
||||
<RootNamespace>TestSuite</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Static</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Static</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>Dynamic</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
||||
<ImportGroup Label="ExtensionSettings"/>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
|
||||
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros"/>
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">bin64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">bin64\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">bin64\static_mt\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">bin64\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">bin64\static_md\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">obj64\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">false</LinkIncremental>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">TestSuited</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">TestSuited</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">TestSuited</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">TestSuite</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">TestSuite</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">TestSuite</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitd.lib;WinTestRunnerd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\TestSuited.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\TestSuited.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnit.lib;WinTestRunner.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\TestSuite.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmtd.lib;WinTestRunnermtd.lib;iphlpapi.lib;winmm.lib;nafxcwd.lib;libcmtd.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_mt\TestSuited.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>nafxcwd.lib;libcmtd.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\static_mt\TestSuited.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmt.lib;WinTestRunnermt.lib;iphlpapi.lib;winmm.lib;nafxcw.lib;libcmt.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_mt\TestSuite.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>nafxcw.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmdd.lib;WinTestRunnermdd.lib;iphlpapi.lib;winmm.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_md\TestSuited.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>bin64\static_md\TestSuited.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\CppUnit\include;..\..\CppUnit\WinTestRunner\include;..\..\Foundation\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader/>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat/>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>CppUnitmd.lib;WinTestRunnermd.lib;iphlpapi.lib;winmm.lib;WinTestRunner.res;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>bin64\static_md\TestSuite.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\CompressTest.h"/>
|
||||
<ClInclude Include="src\PartialStreamTest.h"/>
|
||||
<ClInclude Include="src\ZipTest.h"/>
|
||||
<ClInclude Include="src\ZipTestSuite.h"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\CompressTest.cpp"/>
|
||||
<ClCompile Include="src\PartialStreamTest.cpp"/>
|
||||
<ClCompile Include="src\ZipTest.cpp"/>
|
||||
<ClCompile Include="src\ZipTestSuite.cpp"/>
|
||||
<ClCompile Include="src\WinDriver.cpp"/>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
||||
<ImportGroup Label="ExtensionTargets"/>
|
||||
</Project>
|
60
Zip/testsuite/TestSuite_x64_vs100.vcxproj.filters
Normal file
60
Zip/testsuite/TestSuite_x64_vs100.vcxproj.filters
Normal file
@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Zip">
|
||||
<UniqueIdentifier>{f338ba83-f39e-4073-8332-01d795f7b634}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Header Files">
|
||||
<UniqueIdentifier>{95e2c252-5e12-4ee2-930c-d6763f361109}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Zip\Source Files">
|
||||
<UniqueIdentifier>{81580a2f-d173-44af-ba2b-ed925dac5ffa}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Suite">
|
||||
<UniqueIdentifier>{af72a3f4-2a10-4c7e-aa34-0764d850a4a2}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Suite\Header Files">
|
||||
<UniqueIdentifier>{c517768e-2db3-4298-8930-70652c676569}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Suite\Source Files">
|
||||
<UniqueIdentifier>{7e36d2b5-12ed-4e01-be72-2f51ff44a03d}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Driver">
|
||||
<UniqueIdentifier>{bf43474e-1b7e-45f7-b86a-b457fffa7b61}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="_Driver\Source Files">
|
||||
<UniqueIdentifier>{58077e88-30e7-4722-a137-36e5d648695a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\CompressTest.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\PartialStreamTest.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\ZipTest.h">
|
||||
<Filter>Zip\Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\ZipTestSuite.h">
|
||||
<Filter>_Suite\Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\CompressTest.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\PartialStreamTest.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipTest.cpp">
|
||||
<Filter>Zip\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\ZipTestSuite.cpp">
|
||||
<Filter>_Suite\Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\WinDriver.cpp">
|
||||
<Filter>_Driver\Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
3
Zip/testsuite/TestSuite_x64_vs100.vcxproj.user
Normal file
3
Zip/testsuite/TestSuite_x64_vs100.vcxproj.user
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
@ -1,165 +1,179 @@
|
||||
//
|
||||
// CompressTest.cpp
|
||||
//
|
||||
//
|
||||
// CompressTest.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/testsuite/src/CompressTest.cpp#9 $
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "CompressTest.h"
|
||||
#include "ZipTest.h"
|
||||
#include "Poco/Zip/Compress.h"
|
||||
#include "Poco/Zip/ZipManipulator.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/FileStream.h"
|
||||
#include "CppUnit/TestCaller.h"
|
||||
#include "CppUnit/TestSuite.h"
|
||||
#include <fstream>
|
||||
|
||||
|
||||
using namespace Poco::Zip;
|
||||
|
||||
|
||||
CompressTest::CompressTest(const std::string& name): CppUnit::TestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CompressTest::~CompressTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testSingleFile()
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testDirectory()
|
||||
{
|
||||
std::ofstream out("pocobin.zip", std::ios::binary);
|
||||
Poco::File aFile("some/");
|
||||
if (aFile.exists())
|
||||
aFile.remove(true);
|
||||
Poco::File aDir("some/recursive/dir/");
|
||||
aDir.createDirectories();
|
||||
Poco::File aDir2("some/other/recursive/dir/");
|
||||
aDir2.createDirectories();
|
||||
Poco::File aF("some/recursive/dir/test.file");
|
||||
aF.createFile();
|
||||
Poco::FileOutputStream fos(aF.path());
|
||||
fos << "just some test data";
|
||||
fos.close();
|
||||
|
||||
Poco::Path theFile(aFile.path());
|
||||
theFile.makeDirectory();
|
||||
Compress c(out, true);
|
||||
c.addRecursive(theFile, ZipCommon::CL_MAXIMUM, false, theFile);
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testManipulator()
|
||||
{
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
ZipManipulator zm("appinf.zip", true);
|
||||
zm.renameFile("test.zip", "renamedtest.zip");
|
||||
zm.addFile("doc/othertest.zip", ZipTest::getTestFile("test.zip"));
|
||||
ZipArchive archive=zm.commit();
|
||||
assert (archive.findHeader("doc/othertest.zip") != archive.headerEnd());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testManipulatorDel()
|
||||
{
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
ZipManipulator zm("appinf.zip", true);
|
||||
zm.deleteFile("test.zip");
|
||||
zm.addFile("doc/data.zip", ZipTest::getTestFile("data.zip"));
|
||||
ZipArchive archive=zm.commit();
|
||||
assert (archive.findHeader("test.zip") == archive.headerEnd());
|
||||
assert (archive.findHeader("doc/data.zip") != archive.headerEnd());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testManipulatorReplace()
|
||||
{
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
ZipManipulator zm("appinf.zip", true);
|
||||
zm.replaceFile("test.zip", ZipTest::getTestFile("doc.zip"));
|
||||
|
||||
ZipArchive archive=zm.commit();
|
||||
assert (archive.findHeader("test.zip") != archive.headerEnd());
|
||||
assert (archive.findHeader("doc.zip") == archive.headerEnd());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::setUp()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::tearDown()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test* CompressTest::suite()
|
||||
{
|
||||
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("CompressTest");
|
||||
|
||||
CppUnit_addTest(pSuite, CompressTest, testSingleFile);
|
||||
CppUnit_addTest(pSuite, CompressTest, testDirectory);
|
||||
CppUnit_addTest(pSuite, CompressTest, testManipulator);
|
||||
CppUnit_addTest(pSuite, CompressTest, testManipulatorDel);
|
||||
CppUnit_addTest(pSuite, CompressTest, testManipulatorReplace);
|
||||
|
||||
return pSuite;
|
||||
}
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "CompressTest.h"
|
||||
#include "ZipTest.h"
|
||||
#include "Poco/Zip/Compress.h"
|
||||
#include "Poco/Zip/ZipManipulator.h"
|
||||
#include "Poco/File.h"
|
||||
#include "Poco/FileStream.h"
|
||||
#include "CppUnit/TestCaller.h"
|
||||
#include "CppUnit/TestSuite.h"
|
||||
#include <fstream>
|
||||
|
||||
|
||||
using namespace Poco::Zip;
|
||||
|
||||
|
||||
CompressTest::CompressTest(const std::string& name): CppUnit::TestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CompressTest::~CompressTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testSingleFile()
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testDirectory()
|
||||
{
|
||||
std::ofstream out("pocobin.zip", std::ios::binary);
|
||||
Poco::File aFile("some/");
|
||||
if (aFile.exists())
|
||||
aFile.remove(true);
|
||||
Poco::File aDir("some/recursive/dir/");
|
||||
aDir.createDirectories();
|
||||
Poco::File aDir2("some/other/recursive/dir/");
|
||||
aDir2.createDirectories();
|
||||
Poco::File aF("some/recursive/dir/test.file");
|
||||
aF.createFile();
|
||||
Poco::FileOutputStream fos(aF.path());
|
||||
fos << "just some test data";
|
||||
fos.close();
|
||||
|
||||
Poco::Path theFile(aFile.path());
|
||||
theFile.makeDirectory();
|
||||
Compress c(out, true);
|
||||
c.addRecursive(theFile, ZipCommon::CL_MAXIMUM, false, theFile);
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testManipulator()
|
||||
{
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
ZipManipulator zm("appinf.zip", true);
|
||||
zm.renameFile("test.zip", "renamedtest.zip");
|
||||
zm.addFile("doc/othertest.zip", ZipTest::getTestFile("test.zip"));
|
||||
ZipArchive archive=zm.commit();
|
||||
assert (archive.findHeader("doc/othertest.zip") != archive.headerEnd());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testManipulatorDel()
|
||||
{
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
ZipManipulator zm("appinf.zip", true);
|
||||
zm.deleteFile("test.zip");
|
||||
zm.addFile("doc/data.zip", ZipTest::getTestFile("data.zip"));
|
||||
ZipArchive archive=zm.commit();
|
||||
assert (archive.findHeader("test.zip") == archive.headerEnd());
|
||||
assert (archive.findHeader("doc/data.zip") != archive.headerEnd());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testManipulatorReplace()
|
||||
{
|
||||
{
|
||||
std::ofstream out("appinf.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
ZipArchive a(c.close());
|
||||
}
|
||||
ZipManipulator zm("appinf.zip", true);
|
||||
zm.replaceFile("test.zip", ZipTest::getTestFile("doc.zip"));
|
||||
|
||||
ZipArchive archive=zm.commit();
|
||||
assert (archive.findHeader("test.zip") != archive.headerEnd());
|
||||
assert (archive.findHeader("doc.zip") == archive.headerEnd());
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::testSetZipComment()
|
||||
{
|
||||
std::string comment("Testing...123...");
|
||||
std::ofstream out("comment.zip", std::ios::binary);
|
||||
Poco::Path theFile(ZipTest::getTestFile("test.zip"));
|
||||
Compress c(out, true);
|
||||
c.addFile(theFile, theFile.getFileName());
|
||||
c.setZipComment(comment);
|
||||
ZipArchive a(c.close());
|
||||
assert(a.getZipComment() == comment);
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::setUp()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CompressTest::tearDown()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test* CompressTest::suite()
|
||||
{
|
||||
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("CompressTest");
|
||||
|
||||
CppUnit_addTest(pSuite, CompressTest, testSingleFile);
|
||||
CppUnit_addTest(pSuite, CompressTest, testDirectory);
|
||||
CppUnit_addTest(pSuite, CompressTest, testManipulator);
|
||||
CppUnit_addTest(pSuite, CompressTest, testManipulatorDel);
|
||||
CppUnit_addTest(pSuite, CompressTest, testManipulatorReplace);
|
||||
CppUnit_addTest(pSuite, CompressTest, testSetZipComment);
|
||||
|
||||
return pSuite;
|
||||
}
|
||||
|
@ -1,64 +1,65 @@
|
||||
//
|
||||
// CompressTest.h
|
||||
//
|
||||
//
|
||||
// CompressTest.h
|
||||
//
|
||||
// $Id: //poco/Main/Zip/testsuite/src/CompressTest.h#5 $
|
||||
//
|
||||
// Definition of the CompressTest class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef CompressTest_INCLUDED
|
||||
#define CompressTest_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "CppUnit/TestCase.h"
|
||||
|
||||
|
||||
class CompressTest: public CppUnit::TestCase
|
||||
{
|
||||
public:
|
||||
CompressTest(const std::string& name);
|
||||
~CompressTest();
|
||||
|
||||
void testSingleFile();
|
||||
void testDirectory();
|
||||
void testManipulator();
|
||||
void testManipulatorDel();
|
||||
void testManipulatorReplace();
|
||||
|
||||
void setUp();
|
||||
void tearDown();
|
||||
|
||||
static CppUnit::Test* suite();
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
|
||||
#endif // CompressTest_INCLUDED
|
||||
//
|
||||
// Definition of the CompressTest class.
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#ifndef CompressTest_INCLUDED
|
||||
#define CompressTest_INCLUDED
|
||||
|
||||
|
||||
#include "Poco/Zip/Zip.h"
|
||||
#include "CppUnit/TestCase.h"
|
||||
|
||||
|
||||
class CompressTest: public CppUnit::TestCase
|
||||
{
|
||||
public:
|
||||
CompressTest(const std::string& name);
|
||||
~CompressTest();
|
||||
|
||||
void testSingleFile();
|
||||
void testDirectory();
|
||||
void testManipulator();
|
||||
void testManipulatorDel();
|
||||
void testManipulatorReplace();
|
||||
void testSetZipComment();
|
||||
|
||||
void setUp();
|
||||
void tearDown();
|
||||
|
||||
static CppUnit::Test* suite();
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
|
||||
#endif // CompressTest_INCLUDED
|
||||
|
@ -1,139 +1,139 @@
|
||||
//
|
||||
// PartialStreamTest.cpp
|
||||
//
|
||||
//
|
||||
// PartialStreamTest.cpp
|
||||
//
|
||||
// $Id: //poco/Main/Zip/testsuite/src/PartialStreamTest.cpp#4 $
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "PartialStreamTest.h"
|
||||
#include "CppUnit/TestCaller.h"
|
||||
#include "CppUnit/TestSuite.h"
|
||||
#include "Poco/Zip/PartialStream.h"
|
||||
#include <sstream>
|
||||
|
||||
|
||||
using namespace Poco::Zip;
|
||||
|
||||
|
||||
PartialStreamTest::PartialStreamTest(const std::string& name): CppUnit::TestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
PartialStreamTest::~PartialStreamTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testReading()
|
||||
{
|
||||
std::string message("some dummy message !");
|
||||
std::string prefix("pre ");
|
||||
std::string postfix(" post");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::istringstream istr(message);
|
||||
PartialInputStream in(istr, 0, static_cast<std::streamoff>(message.length()), true, prefix, postfix);
|
||||
char buf[124];
|
||||
in.read(buf, 124);
|
||||
std::string res(buf, in.gcount());
|
||||
assert (res == result);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testWriting()
|
||||
{
|
||||
std::string prefix("X");
|
||||
std::string message("some test message");
|
||||
std::string postfix("YYY");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::ostringstream ostr;
|
||||
PartialOutputStream out(ostr, prefix.size(), postfix.size());
|
||||
out.write(result.c_str(), static_cast<std::streamsize>(result.length()));
|
||||
assert (out.good());
|
||||
out.close();
|
||||
std::string res (ostr.str());
|
||||
assert (out.bytesWritten() == message.size());
|
||||
assert (message == res);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testWritingZero()
|
||||
{
|
||||
std::string prefix("X");
|
||||
std::string message;
|
||||
std::string postfix("YYY");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::ostringstream ostr;
|
||||
PartialOutputStream out(ostr, prefix.size(), postfix.size());
|
||||
out.write(result.c_str(), static_cast<std::streamsize>(result.length()));
|
||||
assert (out.good());
|
||||
out.close();
|
||||
std::string res (ostr.str());
|
||||
assert (out.bytesWritten() == message.size());
|
||||
assert (message == res);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testWritingOne()
|
||||
{
|
||||
std::string prefix("X");
|
||||
std::string message("a");
|
||||
std::string postfix("YYY");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::ostringstream ostr;
|
||||
PartialOutputStream out(ostr, prefix.size(), postfix.size());
|
||||
out.write(result.c_str(), static_cast<std::streamsize>(result.length()));
|
||||
assert (out.good());
|
||||
out.close();
|
||||
std::string res (ostr.str());
|
||||
assert (out.bytesWritten() == message.size());
|
||||
assert (message == res);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::setUp()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::tearDown()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test* PartialStreamTest::suite()
|
||||
{
|
||||
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("PartialStreamTest");
|
||||
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testReading);
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testWriting);
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testWritingZero);
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testWritingOne);
|
||||
|
||||
return pSuite;
|
||||
}
|
||||
//
|
||||
// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "PartialStreamTest.h"
|
||||
#include "CppUnit/TestCaller.h"
|
||||
#include "CppUnit/TestSuite.h"
|
||||
#include "Poco/Zip/PartialStream.h"
|
||||
#include <sstream>
|
||||
|
||||
|
||||
using namespace Poco::Zip;
|
||||
|
||||
|
||||
PartialStreamTest::PartialStreamTest(const std::string& name): CppUnit::TestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
PartialStreamTest::~PartialStreamTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testReading()
|
||||
{
|
||||
std::string message("some dummy message !");
|
||||
std::string prefix("pre ");
|
||||
std::string postfix(" post");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::istringstream istr(message);
|
||||
PartialInputStream in(istr, 0, static_cast<std::streamoff>(message.length()), true, prefix, postfix);
|
||||
char buf[124];
|
||||
in.read(buf, 124);
|
||||
std::string res(buf, static_cast<std::string::size_type>(in.gcount()));
|
||||
assert (res == result);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testWriting()
|
||||
{
|
||||
std::string prefix("X");
|
||||
std::string message("some test message");
|
||||
std::string postfix("YYY");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::ostringstream ostr;
|
||||
PartialOutputStream out(ostr, prefix.size(), postfix.size());
|
||||
out.write(result.c_str(), static_cast<std::streamsize>(result.length()));
|
||||
assert (out.good());
|
||||
out.close();
|
||||
std::string res (ostr.str());
|
||||
assert (out.bytesWritten() == message.size());
|
||||
assert (message == res);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testWritingZero()
|
||||
{
|
||||
std::string prefix("X");
|
||||
std::string message;
|
||||
std::string postfix("YYY");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::ostringstream ostr;
|
||||
PartialOutputStream out(ostr, prefix.size(), postfix.size());
|
||||
out.write(result.c_str(), static_cast<std::streamsize>(result.length()));
|
||||
assert (out.good());
|
||||
out.close();
|
||||
std::string res (ostr.str());
|
||||
assert (out.bytesWritten() == message.size());
|
||||
assert (message == res);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::testWritingOne()
|
||||
{
|
||||
std::string prefix("X");
|
||||
std::string message("a");
|
||||
std::string postfix("YYY");
|
||||
std::string result(prefix+message+postfix);
|
||||
std::ostringstream ostr;
|
||||
PartialOutputStream out(ostr, prefix.size(), postfix.size());
|
||||
out.write(result.c_str(), static_cast<std::streamsize>(result.length()));
|
||||
assert (out.good());
|
||||
out.close();
|
||||
std::string res (ostr.str());
|
||||
assert (out.bytesWritten() == message.size());
|
||||
assert (message == res);
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::setUp()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void PartialStreamTest::tearDown()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test* PartialStreamTest::suite()
|
||||
{
|
||||
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("PartialStreamTest");
|
||||
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testReading);
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testWriting);
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testWritingZero);
|
||||
CppUnit_addTest(pSuite, PartialStreamTest, testWritingOne);
|
||||
|
||||
return pSuite;
|
||||
}
|
||||
|
52
Zip/testsuite/src/WinCEDriver.cpp
Normal file
52
Zip/testsuite/src/WinCEDriver.cpp
Normal file
@ -0,0 +1,52 @@
|
||||
//
|
||||
// WinCEDriver.cpp
|
||||
//
|
||||
// $Id: //poco/1.4/Zip/testsuite/src/WinCEDriver.cpp#1 $
|
||||
//
|
||||
// Console-based test driver for Windows CE.
|
||||
//
|
||||
// Copyright (c) 2004-2010, Applied Informatics Software Engineering GmbH.
|
||||
// and Contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person or organization
|
||||
// obtaining a copy of the software and accompanying documentation covered by
|
||||
// this license (the "Software") to use, reproduce, display, distribute,
|
||||
// execute, and transmit the Software, and to prepare derivative works of the
|
||||
// Software, and to permit third-parties to whom the Software is furnished to
|
||||
// do so, all subject to the following:
|
||||
//
|
||||
// The copyright notices in the Software and this entire statement, including
|
||||
// the above license grant, this restriction and the following disclaimer,
|
||||
// must be included in all copies of the Software, in whole or in part, and
|
||||
// all derivative works of the Software, unless such copies or derivative
|
||||
// works are solely in the form of machine-executable object code generated by
|
||||
// a source language processor.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
// DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
|
||||
|
||||
#include "CppUnit/TestRunner.h"
|
||||
#include "ZipTestSuite.h"
|
||||
#include <cstdlib>
|
||||
|
||||
|
||||
int _tmain(int argc, wchar_t* argv[])
|
||||
{
|
||||
std::vector<std::string> args;
|
||||
for (int i = 0; i < argc; ++i)
|
||||
{
|
||||
char buffer[1024];
|
||||
std::wcstombs(buffer, argv[i], sizeof(buffer));
|
||||
args.push_back(std::string(buffer));
|
||||
}
|
||||
CppUnit::TestRunner runner;
|
||||
runner.addTest("ZipTestSuite", ZipTestSuite::suite());
|
||||
return runner.run(args) ? 0 : 1;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user