UUDeview is a program that converts binary files to and from the "printable ASCII" formats used to transport binary data over the Internet by e-mail or Usenet. It has two basic modes, "encode" and "decode."
It's not possible to directly send binary files via Internet Mail or to post them in the Usenet newsgroups. The protocols used to carry e-mail and news are designed to transport only "printable ASCII" characters.
Over the years, a number of different schemes have appeared for translating (or "encoding") binary files so they can travel safely via Net mail and Usenet. These schemes go by names like MIME, UU-encoding, XX-encoding, and BinHex encoding. A binary file that has been encoded in this way looks like gibberish, often with a few intelligible lines at the beginning (for example, you might recognize the original filename).
No matter which scheme is used, the basic idea is the same: the sender of a binary file encodes it, then transmits the resulting text. To get back the original file, the recipient simply runs the message text through a decoder. UUDeview can perform both the encoding and decoding steps.
Further complexities can arise when a large file is transmitted. Some e-mail and news systems have limits on the maximum message size they can carry; to circumvent these limits, encoded files are broken into multiple parts. UUDeview can recognize, correctly arrange, and decode multi-part encoded files. It can also generate multi-part encoded files.
If you need to retrieve a binary file that's been encoded, you'll need to use the Decode mode. There are five steps to decoding: selecting Decode mode, adding the file or files to decode, setting the destination path, previewing the decode, and performing the decode.
Quick Summary
If you want to get started in a hurry, just follow these steps:
Details
To enter Decode mode, click the "Decode" button in the "Function" box. After the preview step, the UUDeview decoding window looks something like this:
Begin by adding the file or files that you need to decode. Click the "Add " button and browse to the files, then select them and click "Open" (or press <Enter>). As you add files, they will appear in the "Decode these files:" window.
In fact, you can copy and store as many blocks of encoded text as you want in this way: each time you click the "Clipboard" button, UUDeview adds the current contents of the clipboard to its storehouse.
This might be a good time to specify where you want your decoded files to end up. You can either type a destination path directly into the "To Path" box, or you can click the "Path" button to browse to your destination.
As soon as you've added at least one file to the list of files to decode, the "Preview" button will be enabled. Clicking this button will cause UUDeview to examine the encoded files you've supplied and list any binary files it finds. These encoded files will appear in the right-hand window, the output file list.
Each encoded file found by UUDeview will be preceded by a symbol:
Meaning | |
![]() |
File should decode OK. |
![]() |
File probably won't decode OK. Generally, this means that the source files were formatted incorrectly or that parts of a multi-part file are missing. |
![]() |
File might decode properly. This symbol usually means that the "end" marker of an encoded file was missing. |
![]() |
Duplicate filenames. This encoded file has the same name as the file above it (see the two files called ndd.exe in the example). |
![]() |
Conflict. A file with this name already exists in the output directory you have selected. |
![]() |
Decoded OK. After the decode process, this symbol means that encoded file should be identical with the original source file. |
![]() |
Decoding errors. Something went wrong during the decoding process. You can click on the file and look in the "Information" box to see what the problem was (e.g., missing parts, illegal format, etc.). |
Once you've set the output path and made changes to the output file list (if any), you're ready to decode. Just click the "Go" button! UUDeview will decode the files and set the symbols in the output file list to reflect the results of the operation.
If you want to decode another set of files, just click the "Clear" button. UUDeview will empty the file lists and prepare for the next round of decoding.
UUDeview provides a number of options to alter how it processes your encoded files. Most of the time, the default options should be fine. In the event you need the options, here they are:
Option | Meaning |
Fast mode | If set to 1, the library will assume that each input file consists of exactly one e-mail message or newsgroup posting. After finding encoded data within a file, the scanner will not continue to look for more data below. This strategy can save a lot of time, but has the drawback that files also cannot be checked for completeness-since the scanner does not look for "end" lines, it won't notice them missing.
This flag does not have any effect on MIME multi-part messages, which are always scanned to the end (alas, the Epilogue will be skipped). Actually, with this flag set, the scanner becomes more MIME-compliant. |
Dumb mode | UUDeview evaluates information found in each part's "Subject" header line if available. The heuristics here are versatile, but cannot be guaranteed to be completely failure-proof. If false information is derived, the parts will be ordered and grouped wrong, resulting in wrong decoding.
If "Dumb" mode is set, the code that derives part numbers is disabled; it will then be assumed that all parts within a group appear in correct order: the first one is assigned number 1 etc. Part numbers found in MIME headers are still used. |
Alternate Bracket Policy | Multi-part postings on Usenet usually have subject lines like "You must see this! [1/3] (2/4)". How to parse this information? Is this the second part of four in a series of three postings, or is it the first of three parts and the second in a series of four postings? The library cannot know, and simply gives numbers in () parentheses precedence over number in [] brackets. If this assumption fails, the parts will be grouped and ordered completely wrong.
Setting the "bracket policy" option changes this precedence. If now both parentheses and brackets are present, the numbers within brackets will be evaluated first. |
Desperate Mode | By default, UUDeview refuses to decode incomplete files and generates errors. But if switched into "desperate mode" these kinds of errors are ignored, and all available data is decoded. The usefulness of the resulting corrupt file depends on the type of the file. |
Ignore Replies | If set, UUDeview will ignore e-mail messages and news postings which were sent as "Reply," since they are less likely to feature useful data. |
Overwrite Existing Files | By default, UUDeview will warn you before overwriting any existing file. You can silence these messages by setting this option. |
Pause on Errors | Normally, UUDeview will decode all files without stopping to display error messages. The status markers in the output file list will show which decode operations succeeded and which failed.
If you set this option, the program will stop and display a detailed message every time it encounters an error. |
To encode a binary file for transmission, you'll need the Encode mode. There are four steps to encoding: selecting Encode mode, selecting the file to encode, setting the destination path, and performing the encode.
Quick Summary
If you want to get started in a hurry, just follow these steps:
Details
The UUDeview encoding window looks something like this:
If you want to incorporate UUDeview's encoding and decoding functionality into your own programs, there is a DLL version of the program available. The DLL is suitable for use with Visual Basic, C, or any other program that can call Windows Dynamic Link Libraries.
You can download the DLL from the official UUDeview Web page. Currently, the DLL is only available in 32-bit form (for Windows 95 and NT), but a 16-bit version will probably eventually be released.
You can get more information about UUDeview and the UUDeview DLL from the official UUDeview Web Page: http://www.uni-frankfurt.de/~fp/
In the last extremity, you can send mail to:
Last Revised: 1 August 1996.