GZip


GZip Files

To be able to compress using GZip you need to download from the Internet the following files:
  1. zconf.h
  2. zlib.h
  3. zlibstat.lib for 32 bits or 64 bits
If you find the 32 bits version, you must compile your program with 32 bits. If you find the 64 bits version, you must compile your program with 64 bits.
Para poder comprimir usando GZip usted necesita descargar de la Internet los siguientes archivos:
  1. zconf.h
  2. zlib.h
  3. zlibstat.lib para 32 bits o 64 bits
Si usted encuentra la versión para 32 bits, usted debe compilar su programa para 32 bits. Si usted encuentra la versión para 64 bits, usted debe compilar su programa para 64 bits.

Problem 1
Create a dialog application called ZipPro using Wintempla. After creating the application, copy the previous files to the ZipPro/ZipPro/ folder.
Cree una aplicación de Diálogo llamada ZipPro usando Wintempla. Después de crear la aplicación, copie los archivos previos a la carpeta ZipPro/ZipPro/.

CopyFiles

Step A
Use the menu to add the files zconf.h and zlib.h to the project: Project > Add Existing .
Use el menú para agregar los archivos zconf.h y zlib.h al proyecto: Project > Add Existing .

AddExistingFiles

Step B
Edit the stdafx.h file as shown. Be sure to insert the lines before the line that includes Wintempla.h file.
Edite el archivo stdafx.h como se muestra. Asegúrese de insertar las líneas antes de la línea que incluye el archivo Wintempla.h

stdafx.h
. . .
#include "zlib.h"
#include "zconf.h"
#pragma comment(lib, "zlibstat64.lib")
#include "Wintempla.h"
#include "WintemplaWin.h"
. . .


Step C
Edit the files ZipPro.h and ZipPro.cpp,
Edite los archivos ZipPro.h y ZipPro.cpp.

ZipPro.h
#pragma once //______________________________________ ZipPro.h
#include "Resource.h"

class ZipPro: public Win::Dialog
{
public:
     ZipPro()
     {
     }
     ~ZipPro()
     {
     }
     void Compress();
     void Uncompress();
     . . .
};


FileZip.cpp
. . .

void ZipPro::Window_Open(Win::Event& e)
{
Compress();
Uncompress();
}

void ZipPro::Compress()
{
//_______________________________________________________________ 1. Read input file
string input;
if (Sys::FileAssistant::BinaryLoad(L"C:\\selo\\hello.txt", input) == false)
{
this->MessageBox(L"Unable to open input file", L"ZipPro", MB_OK | MB_ICONERROR);
return;
}
//_______________________________________________________________ 2. Compress data
string compressed;
if (Sys::Gzip::Deflate(input, compressed) == false)
{
this->MessageBox(L"Unable to compress data", L"ZipPro", MB_OK | MB_ICONERROR);
return;
}
//_______________________________________________________________ 3. Write compressed file
if (Sys::FileAssistant::BinarySave(L"C:\\selo\\hello.gz", compressed) == false)
{
this->MessageBox(L"Unable to save compressed file", L"ZipPro", MB_OK | MB_ICONERROR);
return;
}
}

void ZipPro::Uncompress()
{
//_______________________________________________________________ 1. Read compressed file
string comp;
if (Sys::FileAssistant::BinaryLoad(L"C:\\selo\\hello.gz", comp) == false)
{
this->MessageBox(L"Unable to open compressed file", L"ZipPro", MB_OK | MB_ICONERROR);
return;
}
//_______________________________________________________________ 2. Uncompress the data
string output;
if (Sys::Gzip::Inflate(comp, output) == false)
{
this->MessageBox(L"Unable to compress data", L"ZipPro", MB_OK | MB_ICONERROR);
return;
}
//_______________________________________________________________ 3. Write compressed file
if (Sys::FileAssistant::BinarySave(L"C:\\selo\\hello2.txt", output) == false)
{
this->MessageBox(L"Unable to save restored file", L"ZipPro", MB_OK | MB_ICONERROR);
return;
}
}


Step D
Create a text file called hello.txt with any text inside. Save the file in convenient location. Be sure the ZipPro.cpp file has the correct path. Run the program. A hello.gzip file will be created. You can open this file using WinRAR or WinZip. The program compresses the hello.txt file and then, the program un-compresses the file.
Cree un archivo de texto llamado hello.txt con cualquier texto adentro. Guarde el archivo en una ubicación conveniente. Asegúrese de que el archivo ZipPro.cpp tiene las rutas correctas (paths). Ejecute el programa. Un archivo hello.gzip será creado. Usted puede abrir este archivo usando WinRAR o WinZip. El programa comprime el archivo hola.txt y entonces, el programa descomprime el archivo.

Tip
You must transfer a library using its source code when you do not care that the users of the library modify the code or learn from them.
Usted puede transferir una librería usando su código fuente cuando a usted no le importa que los usuarios de la librería modifiquen el código o aprendan de él.

Tip
You must transfer a library using a DLL when the library may be used for several programs at the same time.
Usted puede transferir una librería usando una DLL cuando la librería puede ser usada por varios programas al mismo momento.

© Copyright 2000-2021 Wintempla selo. All Rights Reserved. Jul 22 2021. Home