WinCompr is a program that uses the Windows port of ComprLib to compress, encrypt, and convert files to plain text.
Source File
The file to encode or decode is specified here. You can click on the ... button to browse for a file using the standard file open dialog. Alternativily, files can be dragged here.
Dest. File
Destination file, where the encoded or decoded data is written. Clicking the ... button allows you to browse for a file using the standard file save dialog. As with the source file, files can be dragged here.
Method
Select from this list box what method you want to use to encode or decode the data.
-- Compression -- | Compression category; makes things smaller. This is not a method, and if you select it the Encode and Decode buttons will be disabled. |
Arithmetic | Encodes/decodes the file with the arithmetic statistical coding. The output file is usually very small, but it takes a long time to encode. |
DMC | Dynamic Markov Coding is a statistical method. This doesn’t work yet. |
Huffman | Huffman trees. Works well on text files, moderate for general purposes. |
LZARI | LZSS + Arithmetic. Usually excellent ratios, but slow. |
LZHUF | LZSS + Huffman. Similar to LZARI, but uses Huffman trees instead and is faster. Not as efficient, but very close. |
LZSS | Lempel-Ziv-Storer-Syzmanski coding using a ring buffer. Fast, and requires not too much code, but not very good ratios. Works well on text files. |
LZW | Lempel-Ziv-Welch. Encoding and decoding both fast. More data better ratio. Decoding is not implemented because it is so complex I didn’t have time for it. |
RLE Method 1 | Run-Length-Encoding method one. Very fast encoding and decoding, good for general purposes. |
RLE Method 2 | Fast encoding and decoding, good ratio for general purpose. Need to read the file twice. |
Splay | Splay trees. Doesn’t work yet. |
-- Encryption -- | The encryption category. Garbles data to make it unusable. |
Add/Sub | Add/Sub encryption method. Adds or subtracts the password from the file. Easy to crack, but fast. Password needs to be specified. |
Invert | Very weak encryption method, if it can be considered one. Inverts the binary representation of each character in the file. |
XOR | XORs the password with the file. Self is opposite. Also very weak and easy to crack. Password should be entered. |
-- Plain Text -- | Plain text category. Used to translate binary files into text-only data. |
Hex | Hexadecimal encoding. The two-digit hexadecimal number represents each byte. Simple and fast to encode, but size doubles. |
Nibble-Byte | Nibble-byte encoding... doesn’t work don’t use it. |
UUEncoding | Unix-to-Unix encoding. Very popular, and only increases the file size by about 33%. |
XXEncoding | Less popular than UUEncoding, but uses more normal characters that are less likely to get corrupted: 0-9, A-Z, a-z, and ‘-‘. Increases file size by 33% still. |
Idle | Not doing anything |
Encoding... | Encoding in progress |
Decoding... | Decoding in progress |
Reset Position | The file’s position is being reset back to the beginning. |
Read
Counts how many bytes have been read so far.
Written
Counts how many bytes have been written so far.
Ratio
Displays the ratio of the input and output files in percent. 100% being infinitily good, and 0% being very bad. Updated every second while encoding/decoding.
Close
Closes WinCompr.
Encode
Encodes the input file to the output file using the selected method.
Decode
Decodes the input file to the output file using the selected method.
Help
Invokes WinHelp and displays WinCompr.hlp. Note that this file is a WinHelp help file, and this one is an HTML Help file. Either one may be used, but I like HTML better so this one may be more up-to-date