Copyright: Copyright ® 1993-1996 _Snappy_ Software
Citation: Copyright ® 1993-1996 _Snappy_ Software


Contents
 	Wincode: Multi-Purpose Encoder/Decoder for Windows

© _Snappy_ Software (1993-1996)

written by George H. Silva

This is the FREE reference file for Wincode. It is NOT the registered HELP file. It contains no links to Wincode and represents only a fraction of the true HELP file. This file is intended to provide a basic idea of how to use Wincode...

This file contains the following information:

 About Wincode

 Obtaining the HELP File and Support

 Mailing List/Postcard Information

 A Simple Encode Example

 A Simple Decode Example

 A Simple ZIP/UNZIP Example

 A Simple Menu Hook Example

 A Simple Winsort Example

 A Simple Auto E-Mail/Post Example

 Virus Scanners

 Helpful Hints!

 FREE HELP! A few tricks too cool to keep secret ;-)

 Bonus SUM Utility

 Known Limitations and Other Important Notes

 Other _Snappy_ Software

 Copyrights

 License

You are referred to the Wincode v2.3 HELP file for further free information unless you wish to purchase the v2.6 (and up) HELP and support.

Updated info can be obtained by sending a blank e-mail to:

wincode@snappy-software.com

Also check out our Wincode Info Page at:

http://www.members.global2000.net/snappy/wincode.html

Clarification Note:

WINCODE.HLP [image] SHAREWARE HELP FILE

HELPME.HLP  [image] FREEWARE HELP FILE

[GHS 10/31/96]


About Wincode

Wincode is a Windows 3.1x program which converts 8-bit BINARY (EXE, COM,GIF, etc) files to 7-bit ASCII (Text) files (and vice versa) through a process known as bit-shifting. Wincode currently supports UU, XX, USR, Base64 (MIME 1.0 conformant), BINHEX, BTOA and BOO  encoding/decoding. This BINARY/ASCII conversion allows you to send and receive binary files via e-mail or any other ascii-based communications system. It provides a quick and easy way to distribute programs to people all over the world (it takes a few minutes, on average, for e-mail to reach across the world). UUcoding is a common practice on many Internet NewsGroups in which users wish to exchange binary data. Base64 coding is used by MIME (Multipurpose Internet Mail Extensions) conformant e-mail software as a  method for attaching binary data to ascii e-mail. BINHEX is a popular encoding algorithm used mainly on Apple Macintosh computers. BTOA is a somewhat different variation of the common BINARY/ASCII conversion process which supports simple compression, several checksum options and will generally create encoded files that are smaller than other methods due to its conversion algorithm (mod 85). BOO is an older (extinct?) algorithm used in cross-platform file transfers that is provided for compatibility (it requires previous knowledge of decoded output filesize and may hence be unreliable). All these methods perform the same overall function (i.e. allow binary data to be safely transmitted through e-mail) but require different formatting algorithms (e.g. BINHEX supports Run-Length Encoding, BTOA uses mod 85 coding, etc).

Wincode and the associated executables and DLLs (not including the registered HELP file) are distributed as FREEWARE. However, we want to make a distinction: the program is FREEWARE, but it is not Public Domain. _Snappy_ still retains the Copyright to the source code and to the use and distribution of the program (see the License section). The HELP file is available for a small fee ($10.00 US) but is not required for Wincode to function correctly. Ordering the HELP file also entitles you to future updates and e-mail based support. The $10.00 fee is mainly to offset development costs and the amount of personal time invested.

Wincode is 100% compatible with all standard UUcoders, MIME 1.0 conformant software, BINHEX 4.0 and BTOA v4.0 and v5.2 coders. The MIME (Base64) support was developed under the guidelines of RFC 1521 (September 1993) and is subject to our understanding of the document. The BINHEX support was developed under the guidelines of RFC 1741 (December 1994) and is subject to our understanding of the document. The BTOA v4.0 and v5.2 support was developed based on freely available documents by Paul Rutter, Joe Orost & Stefan Parmark (the creators of BTOA). We welcome all comments and error corrections.

As part of our goal to support all BINARY/ASCII conversion methods in one (quality :-) product, Wincode now supports encoding/decoding of seven different formats. We have tried to incorporate as many extra features as possible to make the en/de-coding process painless. The average user may not need/use all of Wincode's features, but they are free!

NOTE TO DEVELOPERS: WCENGINE.DLL contains all of Wincodes working code (currently) accessed through 80+ functions/procedures. We created this simple interface to allow Developers to integrate the Wincode Engine into any program. We will provide the API and royalty free usage to interested developers under certain conditions. Please contact the _Snappy_ development team for more details:

development@snappy-software.com


Obtaining the HELP File and Support

The HELP file is not required for Wincode to function properly. If you can figure out all of Wincode's features on your own, then by all means enjoy the FREE program. If you would like assistance and/or the HELP file to discover Wincode's full potential then order the HELP and support as indicated below.

NOTE: Registration is a one-time fee. If you registered for an earlier version of the HELP file, you do not need to re-register. You are in our database for FREE FUTURE HELP file upgrades. Not bad, huh :-)

To order the Wincode Help file, send $10.00 (U.S. Dollars) to:

Maureen Belisle

_Snappy_

Oxford Heights: Buckingham #5

Albany, NY 12203

This price and address are guaranteed until June 1, 1997. If you wish to obtain the HELP file, PLEASE E-MAIL FIRST for updated information. Send a blank e-mail to:

wincode@snappy-software.com

An easy to use order form is provided as part of Wincode by selecting Help|Ordering the Help file... and then choosing Order Now!.

Payment Method is by Check or Money Order payable to: MAUREEN BELISLE

Payments must be in US dollars drawn on a US bank, or you can send international postal money orders in US dollars.

You may send U.S. cash but _Snappy_ is NOT responsible for lost letters or payments. We keep records of all our e-mail/postal mail transactions. If our records show that we have not received payment, your letter will be considered lost and you will be responsible for the lost payment. We STRONGLY suggest paying by Check or Money Order.

Sales tax is applicable to New York State residents at the current Albany county rate of 8%.

PLEASE include a LEGIBLE E-MAIL address with all orders.

By ordering Help, you obtain the following:

1) The most recent version of Wincode with the Help file.

2) E-Mail access to pre-releases of future versions of Wincode and the Help file.

3) Technical support.

All files will be ELECTRONICALLY MAILED to you. If you wish to have something sent through the US Postal service, please include a Self-Addressed-STAMPED Disk-Mailer and Disk with your order. For an additional fee of $5.00 (see the order form), we can provide the Disk and Disk Mailer.

Multi-User Site License pricing is available (see the order form). A Site License entitles an organization to receive one copy of the Wincode package and duplicate the distribution disk for the specified number of copies.

The HELP file for each release is generally available within 30 days of the official release date. However, since we are a small company, you should please allow 6-8 weeks for delivery. We have installed an automated e-mail system by which registered users can upgrade the help file by sending a simple e-mail. For more information, send a blank e-mail to one of the following addresses:

_Snappy_ info: 	snappy@snappy-software.com

Wincode info: 	wincode@snappy-software.com

Or visit our HomePage at:

http://snappy-software.com/

or

http://www.members.global2000.net/snappy/

NOTE: WAV files selected for use with Wincode are provided free of charge. They are freely available on the internet and were not sampled or altered by _Snappy_. See the Copyrights section of this file for legal copyright notices.


Mailing List/Postcard Information

We are maintaining a mailing list of users who would like to receive free updates of Wincode by e-mail (NOTE: these are updates without the HELP file). Though we were offering this service free, we regret to say that we have changed our policy and have decided to make it Postcard-Support. What is Postcard-Support? It is based on the idea of PostcardWARE software in which you send the author a picture Postcard from your home state, country, whatever to register the product. We have spent quite a bit of our free time developing and supporting Wincode. It will always be FREEWARE. However, if you wish to get pre-releases of new versions of Wincode, you must mail us a picture Postcard to the address given below. We will be separating our mailing list into two groups:

1) users who send postcards

2) users who purchase the HELP option.

If you send a Postcard only, you will only receive the FREEWARE Wincode package without the HELP file. If you purchase the HELP option, you do not need to send the Postcard and you will receive the Wincode Package with the HELP file. Being on the mailing list saves you the hassle of finding Wincode on the internet or downloading it from a BBS.

Users who send Postcards will also be eligible to BETA test _Snappy_ programs and can receive forthcoming _Snappy_ Windows software free if they participate in the BETA trials (help with BETA testing earns you a free Wincode HELP file).

All this for under one dollar! (average price of a Postcard plus postage in continental U.S.)

We welcome all comments and suggestions. Please remember to include program version information in all e-mail! Thanks!

Send Postcards to:

George Silva

_Snappy_

Oxford Heights: Buckingham #5

Albany, NY 12203

Don't forget to include your e-mail address!

Thanks for your support...


A Simple Encode Example

The following is a step by step run through for encoding a file (it is assumed that Wincode is installed and running):

Using the Mouse:

1) Select File|Encode.. from the Wincode menu or select the first (left-most) icon on the Wincode Buttonbar. A File to Encode dialog will appear.

2) At this point, you can select the Options... button to re-check the settings Wincode will use to Encode the file(s).

3) Click through the Directories list to locate the file(s) you wish to encode.

4) Use the Code Type combo-box to quickly select a different encoding algorithm (if necessary :-).

5) If you wish to have Wincode call PKZIP to ZIP the files first, then check the ZIP First checkbox.

6) If you wish to have Wincode automatically e-mail/post the encoded file, check the E-Mail/Post checkbox.

7) At this point, you have five options:

a) to encode only one file, select the file or type the filename in the Filename entry box. Select OK to begin encoding.

b) to encode multiple files of different types, hold the CTRL key and select the files you want with the mouse. You may also type the separate filenames in the Filename entry box separated by a SPACE. Select OK to begin encoding.

c) to encode all the files in this directory, hold down the CTRL key and select the OK button (with *.* as the file). Wincode will begin encoding the files.

d) to encode all files of a specific type (such as *.txt), enter the appropriate file filter (i.e. *.txt) in the Filename entry box, hold down the CTRL key and select the OK button. Wincode will begin encoding the files.

e) to encode into the Windows Clipboard, select a file and press the >> Clipboard button. Wincode will begin encoding. If you select more than one file, Wincode will pause between each file to allow you to copy the contents of the Clipboard to another destination.

8) Wincode will display the Encode progress in its main Window and will list the Encode method in the Hint Bar.

9) By default, Wincode will create an Encode Report file in the set Encode directory and will allow you to view it when complete.

10) That's all!

Using the Keyboard (Key combinations require the user to press and hold specific keys. Use the TAB key to move between fields.):

1) Use CTRL-E to open the File to Encode dialog.

2) At this point, you can select the Options... button by pressing ALT-O to re-check the settings Wincode will use to Encode the file(s).

3) TAB to the Directories list and use the arrow keys, SPACE bar and RETURN key to locate the file(s) you wish to encode.

4) Use the Code Type combo-box ALT-Y to quickly select a different encoding algorithm (if necessary :-).

5) If you wish to have Wincode call PKZIP to ZIP the files first, then check the ZIP First checkbox by pressing ALT-Z.

6) If you wish to have Wincode automatically e-mail/post the encoded file, check the E-Mail/Post checkbox by pressing ALT-E.

7) At this point, you have five options:

a) to encode only one file, select the file or type the filename in the Filename entry box. Select OK by TABing to highlight the button and pressing RETURN. Wincode will begin encoding.

b) to encode multiple files of different types, hold the CTRL key and select the files you want using the arrow keys and the SPACE bar. You may also type the separate filenames in the Filename entry box separated by a SPACE. Select OK by TABing to highlight the button and pressing RETURN. Wincode will begin encoding.

c) to encode all the files in this directory, hold down the CTRL key and select OK by TABing to highlight the button and pressing RETURN. Wincode will begin encoding the files.

d) to encode all files of a specific type (such as *.txt), enter the appropriate file filter (i.e. *.txt) in the Filename entry box, hold down the CTRL key and select OK by TABing to highlight the button and pressing RETURN. Wincode will begin encoding the files.

e) to encode into the Windows Clipboard, select a file and press ALT-C. Wincode will begin encoding. If you select more than one file, Wincode will pause between each file to allow you to copy the contents of the Clipboard to another destination.

8) Wincode will display the Encode progress in its main Window and will list the Encode method in the Hint Bar.

9) By default, Wincode will create an Encode Report file in the set Encode directory and will allow you to view it when complete.

10) That's all!

You may press ESC to cancel at any time (you may also select CANCEL using the mouse or by TABing to highlight the CANCEL key and pressing RETURN).

NOTE: When encoding files using the BINHEX algorithm, you have the option of including the correct MAC Finder info within the file. Doing so will greatly help users on MACs decode the files correctly. By this we mean that the decoded data will contain the correct MAC Icon and Program Association provided by the Finder on their system. Instead of having to use ResEdit (or similar apps) to fix the file, users will be able to just double click and go! (avoiding that annoying message "The application that created this file could not be found...etc"). Wincode ships with an extensive MAC Finder info library from which you may choose the correct info or enter your own. The library can also be edited to store/delete custom entries.


A Simple Decode Example

The following is a step by step run through for decoding a file (it is assumed that Wincode is installed and running):

HINT!!! Use the AUTO-1 or AUTO-2 code type for decoding. Wincode tries to recognize UU, XX, User Defined, BASE64 (MIME), BINHEX and BTOA code-types within the input file. It can not auto-detect raw BASE64 or BOO. These two coding types should never exist in a file which contains extraneous data - this makes it nearly impossible to detect the algorithm! The detection scheme works by identifying certain unique aspects of each coding algorithm. It is not fool-proof. If it fails, you can then force it to use the correct code type. See Important Notes below!

Using the Mouse:

1) Select File|Decode.. from the Wincode menu or select the second (left-most) icon on the Wincode Buttonbar. A File to Decode dialog will appear.

2) At this point, you can select the Options... button to re-check the settings Wincode will use to Decode the file(s).

3) Click through the Directories list to locate the file(s) you wish to decode.

4) Use the Code Type combo-box to quickly select a different decoding algorithm (if necessary :-).

5) If you wish to have Wincode call PKUNZIP to UNZIP the files after they are decoded, then check the UNZIP After checkbox.

6) If you wish to have Wincode Winsort the files before decoding, check the Winsort First checkbox.

7) At this point, you have five options:

a) to decode only one file, select the file or type the filename in the Filename entry box. Select OK to begin decoding.

b) to decode multiple files of different types, hold the CTRL key and select the files you want with the mouse. You may also type the separate filenames in the Filename entry box separated by a SPACE. Select OK to begin decoding.

c) to decode all the files in this directory, hold down the CTRL key and select the OK button (with *.* as the file). Wincode will begin decoding the files.

d) to decode all files of a specific type (such as *.txt), enter the appropriate file filter (i.e. *.txt) in the Filename entry box, hold down the CTRL key and select the OK button. Wincode will begin decoding the files.

e) to Decode from the Windows Clipboard, select the Clipboard >> button. You do not need to specify a filename (it will be ignored anyway). Wincode will search the Clipboard for data (TEXT) and begin decoding.

8) NOTE: If you are decoding a multi-part file, you need only select the first file in the series. Wincode will find the rest of the files provided they are named in order by a) filename or b) extension. If Wincode gets confused, it will prompt you for the next file in sequence. See the Simple Winsort Example for more information regarding multi-part files.

9) Wincode will display the Decode progress in its main Window and will list the Decode method in the Hint Bar.

10) By default, Wincode will create an Decode Report file in the set Decode directory and will allow you to view it when complete.

11) That's all!

Using the Keyboard (Key combinations require the user to press and hold specific keys. Use the TAB key to move between fields.):

1) Use CTRL-D to open the File to Decode dialog.

2) At this point, you can select the Options... button by pressing ALT-O to re-check the settings Wincode will use to Decode the file(s).

3) TAB to the Directories list and use the arrow keys, SPACE bar and RETURN key to locate the file(s) you wish to decode.

4) Use the Code Type combo-box ALT-Y to quickly select a different decoding algorithm (if necessary :-).

5) If you wish to have Wincode call PKUNZIP to UNZIP the files after they are decoded, then check the UNZIP After checkbox by pressing ALT-U.

6) If you wish to have Wincode Winsort the files before decoding, check the Winsort First checkbox by pressing ALT-W.

7) At this point, you have five options:

a) to decode only one file, select the file or type the filename in the Filename entry box. Select OK by TABing to highlight the button and pressing RETURN. Wincode will begin decoding.

b) to decode multiple files of different types, hold the CTRL key and select the files you want using the arrow keys and the SPACE bar. You may also type the separate filenames in the Filename entry box separated by a SPACE. Select OK by TABing to highlight the button and pressing RETURN. Wincode will begin decoding.

c) to decode all the files in this directory, hold down the CTRL key and select OK by TABing to highlight the button and pressing RETURN. Wincode will begin decoding the files.

d) to decode all files of a specific type (such as *.txt), enter the appropriate file filter (i.e. *.txt) in the Filename entry box, hold down the CTRL key and select OK by TABing to highlight the button and pressing RETURN. Wincode will begin decoding the files.

e) to Decode from the Windows Clipboard, press ALT-C. You do not need to specify a filename (it will be ignored anyway). Wincode will search the Clipboard for data (TEXT) and begin decoding.

8) NOTE: If you are decoding a multi-part file, you need only select the first file in the series. Wincode will find the rest of the files provided they are named in order by a) filename or b) extension. If Wincode gets confused, it will prompt you for the next file in sequence. See the Simple Winsort Example for more information regarding multi-part files.

9) Wincode will display the Decode progress in its main Window and will list the Decode method in the Hint Bar.

10) By default, Wincode will create an Decode Report file in the set Decode directory and will allow you to view it when complete.

11) That's all!

You may press ESC to cancel at any time (you may also select CANCEL using the mouse or by TABing to highlight the CANCEL key and pressing RETURN).

IMPORTANT NOTES:

1) AUTO-1 (aka quick-pass) will scan the input file for the first occurence of a known code-type signature. It will then treat the entire input file as if it contains only the detected code-type. This is the case for 95% of input files.

2) AUTO-2 (aka full-pass) will scan the entire file and log all the different detectable code types. It will then proceed to process the input file using each code type detected. So a file can contain a mix of UU, XX, User Defined, BASE64 (MIME), BINHEX and BTOA data and ALL files will be decoded!

3) MIME files that are "message/partial" should never exist in one file. This is a limitation of MIME structured files. You should save these file parts into separate files and Wincode will handle them. A Content-Type of "multipart/mixed" can exist in a single file - that is the correct MIME format. Please refer to RFC1521 for further details.


A Simple ZIP/UNZIP Example

The ZIP/UNZIP support requires that you have working copies of the PKWare ZIP and UNZIP programs (or similar command-line compatible programs).

You should first select the Options|Configuration... menu item (CTRL-F or select the Open-Folder icon on the Wincode Buttonbar) and configure the ZIP/UNZIP support to your system.

NOTE: You must enter a FULL PATH and FILE NAME for both PKZIP and PKUNZIP.

ZIP First:

1) Select a file to encode (as noted in the Simple Encode Example) with the ZIP First option checked.

2) Wincode will prompt you for a name for the ZIP archive. Enter a standard DOS eight character filename (the extension is set in the Options dialog).

3) Wincode will then execute PKZIP on the files you selected placing them in the archive you named. The actual ZIP archive is created in the Wincode TEMP directory (set under Configuration|Wincode).

4) Wincode will wait for PKZIP to finish and then encode the ZIP archive it created (see the Simple Encode Example for more information).

5) Alternatively, you can set the ZIP First feature ON both in the main Encode Configuration dialog or using Interactive Drag and Drop.

UNZIP After:

1) Select a file to Decode (as noted in the Simple Decode Example) with the UNZIP After option checked.

2) Wincode will decode the files as indicated in the Simple Decode Example.

3) If Wincode encounters a file that has the selected ZIP extension it will execute PKUNZIP on the given file.

4) The files will be UNZIPped to the selected UNZIP directory set in the ZIP/UNZIP Options dialog. This allows easy viewing/testing of files.

5) Alternatively, you can set the UNZIP After feature ON both in the main Decode Configuration dialog or using Interactive Drag and Drop.


A Simple Menu Hook Example

Explanation and Rational:

WCEHOOK.DLL allows Wincode to Hook its menu into other applications. When you hook an application, a new menu item Wincode will appear in the Window menu of the hooked app (it should appear before the HELP menu item; Hook will try to find a unique letter to underscore so that you may use the ALT-key combination to activate the Wincode menu...if this fails, it defaults to Wincode! where the ! is underlined -> use ALT-SHIFT-1 to activate). Why do this you ask? Well, say you are downloading files in Procomm Plus for Windows and you want to decode them as you get them. Normally, you would switch to Wincode and select File|Decode, etc, etc. Or maybe you are encoding/ uploading...etc. Either way, it would be nice if you could minimize the app switching. In other words, it would be nice to have an encode/decode menu option built-in to your Comm app. That's where hooking comes in. Once hooked, you'll see a re-creation of Wincode's menu in the form of pop-up labelled Wincode. Wincode hides itself (minimized/hidden) and executes in the background. The only functionality missing when Wincode is hooked is Drag and Drop (there is no Window to drag to! - besides, it defeats the purpose of hooking ;-) )...see below for more info...

With the release of v2.6.5, Wincode now includes an enhanced WCEHOOK.DLL and a new WCEFMEXT.DLL.

The enhancements to the standard Hook DLL allow Wincode to become a floating menu. Wincode will not hook into an application but rather become a menu itself. You move the menu by clicking with the LEFT mouse button and dragging. You select an item by using the mouse RIGHT click to activate a popup menu.

The new DLL offers a direct hook into File Manager using the Microsoft File Manager Extensions. This allows Wincode to work on files that you select in File Manager. You will notice that the Encode/Decode menu items no longer have ellipses (...). This means that they act on the files you choose directly in File Manager.

The following example shows how to establish a Menu Hook on the Windows File Manager program. Not all programs are compatible with Menu Hooking. In particular, programs which dynamically modify their menus (e.g. Word for Windows 6.0) can be unHookable (SEE IMPORTANT NOTES BELOW). If a program does get Hooked but you lose access to the Wincode functions, simply close the program down (this will close Wincode too). You now have the option of just using the floating menu hook in these situations.

1) Select the Options|Configuration... menu item (CTRL-F or select the Open-Folder icon on the Wincode Buttonbar) and select the Hook App page.

2) Set the Application Name: the application name is the name you see in the application Window Titlebar when it is maximized. This is important. Wincode will match only the text you provide . So FILE MANA and FILE MaNaGeR would both hook the Windows File Manager program if it were an active Window (exact matching is an option) and the only program with that text in its titlebar. You can create a list of active Window Titles using the Hook Tuning options (it creates a file called WIN_LIST.RPT in your Wincode Working Directory). For the purpose of this example, set the Application Name to: File Manager

3) Set the Application Path: the application path is the file name Wincode will execute in the event that it cannot match the Window Title info. Include a full path and filename here. Wincode will wait 1 second (default value that can be changed) after executing an application to give it time to setup. For the purpose of this example, set the Application Path to the location of WINFILE.EXE (usually it is: c:\windows\winfile.exe).

4) For the purpose of this example, leave the other options in their default settings.

5) Select OK when you are done (TAB to highlight the button and hit RETURN).

6) To Hook Wincode, select Actions|Hook Wincode (CTRL-H or select the Hook icon on the Wincode Buttonbar).

7) If File Manager is open, it will become the active application once Wincode has established its Hook. If File Manager is not running, it will be executed and Wincode will then Hook into it.

8) Check the File Manager menu (just before HELP) and you will see the Wincode item (with the letter i underlined :-).

The Hook menu changes depending on the action you perform. Wincode will also popup a small progress dialog box for each encoding/decoding action. It lists the current filename and percent done and the percent of the total job completed (the same info displayed in the Wincode Main Window). To Stop or Quit a process, select the Stop or Quit buttons from this dialog.

To Unhook Wincode, you have three options:

1) From the Wincode menu item select UnHook Wincode. Wincode will re-display itself where it was last located. Everything is back to normal.

2) From the Wincode menu item select Exit. Wincode will unHook itself and then close down. The Hooked app returns to normal.

3) Close the application in which Wincode is hooked. Wincode will automatically be closed.

NOTE: In the above example, we used the standard hook for File Manager. However, by selecting Use File Manager Extension from the Hook App Configuration dialog, you could establish a tightly integrated hook to File Manager.

IMPORTANT NOTES:

1) Certain programs (e.g. WSGopher 1.2, Free Agent) use dynamic menus. This sometimes causes Wincodes Hooked menu to appear grayed out. If this happens, set the Double Hook Menu option in the Hook Tuning section. This will insure the Wincode menus are enabled.

2) If you hook an application then quit and Wincode does not unhook itself, you can use the reset option to get it back. Just start another copy of Wincode with the commandline: -RESETWINCODE. For example, if Wincode is located in c:\util\, then you would execute:

c:\util\wincode -resetwincode

This forces Wincode to revert to a normal state and shutdown. It will only work if a previous copy of Wincode is running. If this does not work, we suggest reseting your machine (VERY RARE :-). This option is provided as an emergency backup method to powerdown Wincode. We have found in the past that not all applications behave well when hooked. This insures that Wincode will behave well :-) This feature may be used at any time to kill a previous session of Wincode.

Also check out the FREE HELP! A few tricks too cool to keep secret ;-) section!

Known Limitations:

1) Microsoft Word for Windows v6.0 is incompatible with the Hook option. The program will issue a GPF because the Wincode menu is not defined internally and therefore has no hint text (Word crashes trying to assign hints to the menu). We are currently working on this problem.

2) You can not Hook applications that do not have a menu.

If you experience any problems hooking apps, PLEASE let us know. We've been working on this for a while and it should be fairly clean... ;-)


A Simple Winsort Example

Winsort is designed to alleviate the files-must-be-in-order restriction when decoding multi-part or mixed part single files. It works by analyzing the Header information of the separate and/or internal files and extracting the encoded information into files Wincode can process. Winsort looks for the Subject line in file headers as its default. However, Winsort does support Wincode (2.0 or later), R.E.M, xmitBin, shar (by postbin), POST v1.2, X-File, and more headers. If Winsort cannot decipher information within a header, it will prompt the User for the missing information. Winsort creates files in the Wincode TEMP directory (WSxxxxxx.yyy where x is a number and yyy is the extension of the input file).

In addition to its sorting abilities, Winsort can also filter HTML codes from encoded documents and remove extraneous forward markers (the extra text inserted by e-mail programs to indicate a file was forwarded). The first situation arises when you download encoded text using a WWW browser. Try using one of the popular WWW search engines to search the USENET for an encoded file. You will find that it looks ok in the browser window, but when you save it as a text file, it destroys the encoded information by inserting extra characters (HTML code) in the text. Winsort can easily clean this mess for you by setting the Filter HTML Codes option. The second situation arises when someone forwards you an encoded document that they received. The text will usually contain the greater-than symbol (>) in the left-hand column to signify that the text is forwarded. In this situation, you can have Winsort Flush Left - that is, move every line in the file to the left by a specified number of spaces (the Flush # Chars). This will restore the forwarded portions of the file to appear as they were originally - hence repairing the encoded information.

The following demonstrates how Winsort is used (this is only necessary for files demonstrating one of the symptoms mentioned above):

1) Select Options|Configuration... (CTRL-F or select the Open-Folder icon on the Wincode Buttonbar).

2) Choose Decode and set the Winsort First option (ALT-N).

3) Select OK when you are done (TAB to highlight the button and hit RETURN).

4) Decode a file as specified in the Simple Decode Example.

5) Wincode will call Winsort to process the file(s) then resume when Winsort is complete.

6) That's all!

7) Alternatively, you can set the Winsort First feature ON in the File|Decode dialog, using Interactive Drag and Drop or by selecting the menu item (CTRL-N or select Options|Winsort First).

HINT: To only filter HTML codes (no sorting), set the Sort Options to Flush Left ONLY and select zero (0) for the Flush # Chars entry. Set the Filter HTML Codes option and go!


A Simple Auto E-Mail/Post Example

Explanation and Rational:

The Wincode Engine E-Mail/Post module is a WINSOCK compatible agent that allows you to instantly encode and e-mail and/or post documents to a user/newsgroup or list of users/newsgroups. The module works in the background independent of Wincode and can be set to queue messages at specified intervals. What can this be used for? Say I have a PC at home with a SLIP account and I'm working with several colleagues on a document in WordPerfect. What I could do is create a mailing list of these people and configure Wincode to Auto E-Mail/Post the encodes. Then, with Wincode hooked into Wordperfect, I can select the encode option and e-mail away the latest drafts of the document as I work in WordPerfect. No need to run an e-mail program or create attachments, etc. As another example, say I just created a new DOOM WAD file and wish to distribute it on the Usenet. I would configure the appropriate Newsgroups in the Wincode Address Book and then just drag and drop the file onto Wincode to encode and post it in one simple step. Nice and easy posting...

With the release of version 2.0 of the Wincode EPD (E-Mail/Post Daemon), there is now an integrated Address Book. The Address Book allows users to organize their e-mail and newsgroup information. Entering information into the address book is quite simple. Just use the Edit menu or right-click the Address Book to obtain a pop-up menu of commands. Each folder may contain up to 100 items which includes an address and simple description.

Setup:

TCP/IP Page

1) At minimum, you must specify an SMTP server. The E-Mail/Post Daemon (EPD) will communicate to you through its Trace window (which can be logged) and via e-mail feedback. Most sites use mail followed by the domain as the server address (i.e. mail.global2000.net).

2) The NNTP server is optional. Most sites use news followed by the domain as the server address (i.e. news.global2000.net).

3) Leave the Port settings as is unless they are different at your site (this is very unlikely).

4) At this point, you can try testing your setup by using the Test xxTP Server Setup buttons. Please note that this test may take anywhere from a few seconds to several minutes.

5) For now, leave all other options at their DEFAULTS. Setting the Queue to Spool First will allow you to modify the Auto E-Mail/Post modules message queue (usually not necessary).

E-Mail/Post Page

1) At minimum, you must specify a valid fully qualified internet return address.

2) The rest of the setup is fairly straightforward. The Subject Format option allows you to specify how Wincode will create the Subject line of the e-mail/post message (which can also be edited later). There are three escape sequences that are translated by Wincode:

a) \f is translated into the Filename

b) \p is translated into the Part number

b) \t is translated into the Total parts

These sequences may be arranged (or ommitted) as desired.

3) Select the Address Book... button to bring up the Wincode Address Book. Entering information is quite simple :-).  By default, Wincode will create one file in its home directory: WCEPADDR.WAB which contains your default Address Book.

An E-Mail Example:

1) Verify that your TCP/IP and E-Mail/Post options are configured correctly as noted above. For this test, you will mail something back to yourself.

2) Enable the Auto E-Mail/Post option by selecting the Auto E-Mail/Post menu item (CTRL-M or select the File-to-Mail X icon on the Wincode Buttonbar).

3) An appropriate encode CODE TYPE should be selected. This will vary depending on the recipient. We do suggest that you set the Header Type to MIME Conformant.

4) Encode a file(s). For this example, a small text file such as your AUTOEXEC.BAT will do nicely.

5) When the encoding is complete, Wincode will pop-up an E-Mail/Post-To dialog which allows you to specify a recipient (E-Mail To), CC (Carbon Copy To), BCC (Blind Carbon Copy To) or Newsgroup (Post To). You may enter an address in any of these fields. For the purpose of this example, enter your address in the E-Mail To field.

6) You may also press any of the field buttons to bring up an Address selection dialog. This dialog initially displays the contents of the last active Wincode Address Book. When you make a selection, click OK and it will be copied into the appropriate field.

7) You may also edit the Subject if you like :-)

8) When finished, select OK and Wincode will automatically launch the Auto E-Mail/Post module (EPD) to handle the e-mailing of the file.

9) That's all!

10) You will note that the Auto E-Mail/Post module will wait the full spool time (if set - default is 15 minutes) before trying to send the document(s).

A Posting Example:

1) Verify that your TCP/IP and E-Mail/Post options are configured correctly as noted above. For this test, you will post something to the ALT.TEST newsgroup (used for this very purpose :-).

2) Enable the Auto E-Mail/Post option by selecting the Auto E-Mail/Post menu item (CTRL-M or select the File-to-Mail X icon on the Wincode Buttonbar).

3) An appropriate encode CODE TYPE should be selected. This will vary depending on the recipient. We do suggest that you set the Header Type to MIME Conformant.

4) Encode a file(s). For this example, a small text file such as your AUTOEXEC.BAT will do nicely - though you may want to create a dummy file if you are concerned about the contents of your AUTOEXEC.BAT floating on the internet! :-)

5) When the encoding is complete, Wincode will pop-up an E-Mail/Post-To dialog which allows you to specify a recipient (E-Mail To), CC (Carbon Copy To), BCC (Blind Carbon Copy To) or Newsgroup (Post To). You may enter an address in any of these fields. For the purpose of this example, enter alt.test in the Post To field.

6) You may also press any of the field buttons to bring up an Address selection dialog. This dialog initially displays the contents of the last active Wincode Address Book. When you make a selection, click OK and it will be copied into the appropriate field.

7) You may also edit the Subject if you like :-)

8) When finished, select OK and Wincode will automatically launch the Auto E-Mail/Post module (EPD) to handle the posting of the file.

9) That's all!

10) You will note that the Auto E-Mail/Post module will wait the full spool time (if set - default is 15 minutes) before trying to send the document(s).

NOTES:

1) When the Auto E-Mail/Post option is enabled, Wincode will not create a normal output file. It will create a temporary spool directory (\~mqueue) in which it places temporary files. Once the Auto E-Mail/Post module has processed the files, they are deleted.

2) By selecting Spool First for the Queue, you can easily edit the contents of the message queue (i.e. cancel a message, verify content, etc). Otherwise, messages are sent immediately after they are added to the message queue.

3) You can edit the message queue in two ways:

a) Select the Wincode E-Mail/Post Daemon (EPD) application. From the Queue menu item select Pause (CTRL-P) to pause the queue and then select Modify (CTRL-M) to modify it.

b) In Wincode, select the Options|Configuration... menu item (CTRL-F or select the Open-Folder icon on the Wincode Buttonbar) and select the Queue button (with the mail icon).

NOTE: Being a Winsock app means that the program requires a WINSOCK.DLL. Please be sure that your system has been configured properly.


Virus Scanners

Wincode now incorporates built in support for DOS Virus Scanners. Configuration is fairly straightforward (see the Options|Configuration...|Misc. Page). We have included built-in support for three popular Virus Scan Packages (two shareware packages and the scanner shipped with MSDOS 6.0). The file VSDLINK.DAT contains the configuration information for these packages. Users can edit this plain text file to include support for other DOS virus scanners. Please refer to the VSDLINK.DAT file for details.


Helpful Hints!

If you want to know what something does, try it! Wincode (by default)  will warn you if you are about to make a big mistake :-) The program is designed to be intuitive and easy to use. We welcome all comments and suggestions (good or bad) but please do not e-mail/phone for support unless you have purchased the HELP file option (sorry). Thanks for using and supporting _Snappy_ software. Have fun!

Also check out the FREE HELP! A few tricks too cool to keep secret ;-) section!

These are some helpful hints to get you started:

1) TRY EVERYTHING! We can't stress this enough ;-) Some options depend on the settings of other options (i.e. if you select Make EMBL Files, many of the standard encode options are disabled -> this is because certain options are mutually exclusive, etc). If there are major conflicts in your configuration, Wincode will let you know.

2) To see what a Buttonbar item does, hold the mouse over it until the Hint text appears.

3) Simple configuration WARNING messages (i.e. if you are deleting files, etc) can be disabled. Edit the WINCODE.INI file and set WARNINGS=0.

4) The degree to which Wincode interacts (i.e. through dialogs) with the user is controlled by the Interactive Mode setting (Low, Medium, High). If you set this option to anything other than High, we suggest enabling the Report File option and turning on the sound support. This will allow you to continue monitoring Wincodes progress while working on other things :-) Use High for beginners and Medium/Low for experts!

5) You can associate up to 50 (fifty) extensions to Wincode that it will recognize as decodable. This is useful if you want to double-click on files to decode them or if you are doing mixed encode/decode operations. We suggest adding the following: UUE, UU, UAA, XXE, XX, USR, B64, MME, MM, HQX, HEX, B2A, BOO, MSG, 001, 01, 1. These are the common extensions for various types of encoded files. NOTE: Files do not have to have associated decodable extensions to be decoded. When you select File|Decode... or use the Interactive Drag & Drop option and select Decode, files will be decoded regardless of extension.

6) Set the Interactive Drag and Drop mode ON and use it! It allows you to quickly modify basic coding options for batch processes. NOTE: The Extension Based option means that files are encode/decoded based on their extensions as recognized by Wincode.

7) The Join/Split option allows you to piece together or split files in a specific order/size. Joining is useful for when the files are all named differently and Winsort isn't working (headers not recognized). You can send the new file directly to the encode/decode engine after it is created. Splitting is useful for when you have BOO encoded files or you just want to evenly partion a huge file. NOTE: Do not use the Split option to split encoded files! Wincode does that automatically for you as it encodes the data. Just make sure that Single File is not checked and you can enter a Bytes per File size for the resulting encoded output! Remember, Wincode will disable mutually exclusive options in its Configuration dialog.

8) Use the File Description option to add extra info to the beginning of encoded files. You can enter up to 30000 characters (30K - includes CR/LF).

9) Use the Run Decoded option to have Wincode execute files once they are (safely) decoded. Wincode uses the WIN.INI Associations list for choosing which program to use to display the file.

10) The Header Type (Wincode or MIME) is toggled by selecting either a) a new Code Type or b) turning ON the File Headers option (if it is already ON, turn it OFF then ON again).

11) RAW BASE64 decoding uses the input file as a raw data stream. This means that the file cannot have any non-essential data. There are two exceptions (see the registered HELP file for details). You toggle the BASE64 decode mode by selecting the BASE64 Code Type.

12) The Window List created by the Hook App option is saved as WIN_LIST.RPT in the Wincode Working Directory. It lists the Window Titlebar Text as Wincode saw them and can be very useful in determining Windows that can be hooked.

13) Auto-Hooking Wincode on start-up allows you to have Wincode execute the hookable app when you execute Wincode.

14) Enter FULL Pathnames for PKZIP and PKUNZIP.

15) Take advantage of Wincode's scripting ability to save yourself time and money (download dollars :-).

16) To use the Auto E-Mail/Post Module, you must have WINSOCK correctly setup on your system. If you don't know what WINSOCK is, then the module probably won't work :-( Please refer to any one of the many books published about the internet and network access.

17) Use the AUTO-1 or AUTO-2 code type for decoding. Wincode tries to recognize UU, XX, User Defined, BASE64 (MIME), BINHEX and BTOA code-types within the input file. It can not auto-detect raw BASE64 or BOO. These two coding types should never exist in a file which contains extraneous data - this makes it nearly impossible to detect the algorithm! The detection scheme works by identifying certain unique aspects of each coding algorithm. It is not fool-proof. If it fails, you can then force it to use the correct code type.

18) Take advantage of the BINHEX encodes ability to store the correct MAC Finder info within the file. This will make the information more accessible to MAC users! (see NOTE in A Simple Encode Example).

19) Use the built in Virus Scanner option for extra safety. You can customize it further by editing the VSDLINK.DAT file.

20) The rest is in the registered HELP file...Sorry! :-)

Remember, chances are Wincode CAN ALREADY do what your thinking of...but if you're sure it can't and you'd like to see that feature, let us know!


FREE HELP! A few tricks too cool to keep secret ;-)

The following are a few features which we feel are too cool to reveal only in the registered HELP file.

Getting the most out of the application Hook

A key feature of Wincode is the ability to hook into other applications. This allows you to have all of Wincodes' features available in all your other applications. Well now there is a new twist. When hooked into an application, Wincode now has the ability to directly insert encoded text into or decode text from the application itself. Please refer to the Simple Menu Hook Example section for general Hooking instructions. The following sections describe key features of the enhanced application Hook ability with specific instructions for Netscape (2.0/3.0), AOL (2.5/3.0) and WinCIM (2.0.1).

Enhanced Hook Menu: The Wincode Hook feature has been enhanced to better integrate with other applications. First, we added new menu items (as shown) which allow you to directly encode into or decode from most applications:

The only requirement is that the application you hook into must have an Edit menu with the following selections: Paste  (to use Encode|Insert...), Copy (to use Decode|Selected Text and Decode|All Text) and Select All (to use Decode|All Text). Operation is straightforward. The following are general outlines for using these new menu items.

To encode into an application document:

1) Start Wincode, configure the appropriate Hook options and hook the selected application.

2) In the application, open/create the document where you would like the encoded text inserted.

3) Select an insertion point. NOTE: Some applications limit the amount of text they can hold in "edit" windows. You may want to set the Bytes per File Encode option to something that is 1-2K below this limit. You can insert multi-part encoded files into different documents - Wincode will pause between each piece to let you select a new insertion point. Specific examples are given below (AOL, WinCIM).

4) Now select Wincode|Encode|Insert... - a common dialog will appear similar to the one used by Wincode with a new checkbox item labelled Auto-Script. The Auto-Script feature is discussed below - do not check it!

5) Choose the file you wish to encode/insert into the document and click OK. If all of the encoded file can be inserted in a single part file (one step), Wincode will drop it in. If not, Wincode will encode the first part and prompt you to select an insertion point. It will repeat these steps for the remaining parts. You may cancel at any time.

To decode from an application document:

1) Start Wincode, configure the appropriate Hook options and hook the selected application.

2) In the application, open/select the document from which you would like to decode text.

3) If you wish to decode a specific portion of the document, select it using the mouse/keyboard and choose Wincode|Decode|Selected Text.

4) If you wish to decode the entire document, choose Wincode|Decode|All Text.

5) Wincode will copy the text into the clipboard and decode it automatically.

Again, we wish to stress that this functionality requires that the hooked application have the proper Edit menu items as noted above and that it is able to respond to selection of these menu items programmatically (i.e. simulated by the Wincode Hook). Wincode simply instructs the application using these menu choices. This prevents Wincode from over-stepping any application "bounds" - i.e. it will not insert more text then the application can handle. This also means that the functionality is limited only by the application that is hooked itself - not by Wincode (again, a prime example is the fact that some applications cannot paste more than 64K of data to the Clipboard).

Hook Auto-Script: In some cases, "Inserting..." single or multi-part encoded files into Hooked documents can require repetitive and tedious steps. To this end, we have extended Wincodes' Hooked Insert ability to be able to use Hook Scripts (HKS). These scripts are binary, compiled files which allow Wincode to "automate" the application into which it is hooked. Wincode can literally "take-over" an application and perform a series of necessary steps before Inserting the encoded data. We have included two such scripts which are decribed below (for AOL and WinCIM - makes sending encoded documents easy). We will soon be making the Wincode Hook Script compiler and complete instructions available to all users. In the meantime, if you have an application for which you would like a script, drop us a line at: feedback@snappy-software.com. NOTE: If no script is available for the currently hooked application, this option is disabled.

Hook Netscape (2.0/3.0 - 32-bit preferred): Although newer versions of Netscape are capable of decoding text internally, this option is currently available only in the News Browser. However, Netscape can be used to obtain USENET newsgroup data form groups that are either a) not carried by your ISP or b) filter-out by your ISP (i.e the naughty picture groups :-). Well, here is a neat trick to get around that limitation. You will need the following:

1) Netscape 2.0 or 3.0 Beta - 32-bit version is preferred since it handles Clipboard copies larger than 64K!!!

2) Wincode 2.7.2g or later :-)

3) Alta-Vista Search Page and some imagination ;-)

Great! Now before we do this, here is a brief discaimer: Whatever you do (and however you do it) on your Netscape browser is your own doing. We are not responsible for anything you may find on the net that you term offensive. Such is the risk of surfing unexplored net territory. If you don't like it, lump it! Now back to our main feature:

1) Start Netscape and go to the Alta Vista Search Page.

2) Start Wincode and select the Configuration option (CTRL-F) "Hook App" page. For Application Name: enter Netscape. For Application Path: enter the full path for netscape.exe. Under Advanced Options, CHECK the Hide Wincode when Hooked option (only). Under Hook Tuning, CHECK the Skip Opening Window option (only). Set the Hook Delay to 2 and set the Menu Range to 2 - this is IMPORTANT! Click OK to save the settings and exit.

3) Hook Wincode into Netscape (CTRL-H or use the Hook Icon button).

4) In Alta Vista, select the Usenet for the Search choice.

5) Now do a search for something. A good test search is Wincode. You will find a large number of posted files which have been encoded using Wincode. If you can, find one that says [1/1] in the title.

6) Now click on the item to have Netscape load the article.

7) When Netscape is done, select Wincode|Decode|All Text.

You're done! Wincode will have Netscape select and copy the article into the Clipboard and then decode it. You will notice that this method can be used with other browsers and similar Search Engines. Give it a shot and send us some feedback! :-)

Hook AOL (2.5/3.0): The following is a description of how to use Wincode with AOL 2.5/3.0 to send encoded binary files to people on the internet (you do not need to do this for other AOL members). This process is done as described under the Enhanced Hook Menu section above however we will be using a Wincode Hook Script designed to quickly automate this process (even for files larger than 30K).

1) Start AOL.

2) Start Wincode and select the Configuration option (CTRL-F) "Encode" page. Choose either UUE or BASE64 (MIME) for a Code Type. These code types support multi-part encoding. Uncheck the Single File option and set the Bytes per File size to 29000 - VERY IMPORTANT!

3) Now select the "Hook App" page. For Application Name: enter America  Online (there are TWO spaces between the word "America" and "Online"). For Application Path: enter the full path for waol.exe. Under Advanced Options, CHECK the Hide Wincode when Hooked option (only). Under Hook Tuning, CHECK the Skip Opening Window option (only). Set the Hook Delay to 2 and set the Menu Range to 2.  Click OK to save the settings and exit.

4) Hook Wincode into AOL (CTRL-H or use the Hook Icon button).

5) Select Wincode|Encode|Insert... When the File Open dialog appears, check the Auto-Script option. Select a file and choose OK.

6) Wincode will now encode the first 29K of the file and then pop up a dialog letting you know that it is about to encode a document into an e-mail message for you. Click OK.

7) Wincode will now prompt you for a e-mail address for the recipient. This text will be entered in the "To:" field of the AOL "Compose Mail" dialog. Enter the e-mail address as you normally would (up to 255 characters) and select OK.

8) Wincode now does its magic :-) It will start a mail message, enter the recipients name, enter a subject (filename part/total) and then enter the encoded file into the body of the message. Finally, it places the message in your Out-box (FlashMail) to send later (after you check it over, etc).

That's it! How easy can it get!? Give it a shot and send us some feedback! :-)

Hook WinCIM (2.0.1): The following is a description of how to use Wincode with WinCIM 2.0.1 to send encoded binary files to people on the internet (you do not need to do this for other WinCIM members). This process is done as described under the Enhanced Hook Menu section above however we will be using a Wincode Hook Script designed to quickly automate this process (even for files larger than 64K).

1) Start WinCim (Compuserve Information Manager for Windows).

2) Start Wincode and select the Configuration option (CTRL-F) "Encode" page. Choose either UUE or BASE64 (MIME) for a Code Type. These code types support multi-part encoding. Uncheck the Single File option and set the Bytes per File size to 62000 - VERY IMPORTANT!

3) Now select the "Hook App" page. For Application Name: enter Compuserve. For Application Path: enter the full path for wincim.exe. Under Advanced Options, CHECK the Hide Wincode when Hooked option (only). Under Hook Tuning, CHECK the Skip Opening Window option (only) Set the Hook Delay to 2 and set the Menu Range to 2. Click OK to save the settings and exit.

4) Hook Wincode into WinCIM (CTRL-H or use the Hook Icon button).

5) Select Wincode|Encode|Insert... When the File Open dialog appears, check the Auto-Script option. Select a file and choose OK.

6) Wincode will now encode the first 62K of the file and then pop up a dialog letting you know that it is about to encode a document into an e-mail message for you. Click OK.

7) Wincode will now prompt you for a e-mail address for the recipient. This text will be entered in the "Name:" and "Address:" fields of the WinCIM "Recipient List" dialog. Enter an INTERNET e-mail address only (i.e. someone@somewhere.net) - the script will fail otherwise! The name can be up to 255 characters. Select OK.

8) Wincode now does its magic :-) It will start a mail message, enter the recipients name, enter a subject (filename part/total) and then enter the encoded file into the body of the message. Finally, it places the message in your Out-Basket to send later (after you check it over, etc).

That's it! How easy can it get!? Give it a shot and send us some feedback! :-)

Getting the most out Decoding

Wincode supports seven different encoding algorithms. These methods differ in many essential ways but in essence they all have one common attribute - they are plain Text files. To this end, figuring out what is what can be quite difficult if not impossible. Unlike the world of binary files, there are few if any unique file signatures (such that a normal user could not create by hand). This makes the job of the auto-decoder quite a task! Wincode currently has two decoding methods by which it tries to do this task for you - Auto-1 and Auto-2. The first method will scan a file until it finds the first "known" encode algorithm. It will then process the entire file with the appropriate decode algorithm and consider it decoded. The second option, on the other hand, will process the entire file and note all encode algorithms it encounters. When done, it will process the file with each algorithm separately to ensure you get all the data. Please note that this method is not fool-proof and may fail (it does not work on BOO files). In that case, you must manually set the decode alrotihm. But how do I know which encode algorithm was used?! Well, this takes a bit of work and knowledge on the part of the user. Use a text editor (or viewer) to Open the file and examine the text formatting - in almost 95% of the cases, the code type will be easily determined and you should not have to edit the file. In other situations, it may be plain necessary (i.e. BOO encodes can not have extraneous text within the file). In any case, we suggest that everyone get a feel for what an encode algorithms "looks like" by doing the following simple exercise:

1) Start Wincode and set the Encode Code Type to UUE (also turn Headers off).

2) Take any small file and encode it.

3) Use a text editor/viewer to open the file - look at it :-)

4) Repeat steps 1-3 above changing encode algorithms in step 1.

As a last resort, you could also try to process the same file several times while changing the decode algorithm for each turn (brute force method - may not work as some file editing may be necessary as noted above).

Letting Wincode do the work for you

Wincode, by default, is a highly interactive application. It will tend to be a bit more cautious then most other apps and will always prompt the user for what to do next. As usual, this feature is configurable :-) Using the Interactive Mode setting on the Wincode page in the Configuration dialog, you can configure Wincode to make some "decisions" for you. There are three settings - High (default), Medium and Low - which give Wincode various amounts of "responsibility". The default is, of course, to ask the user for input. However, this can get tedious especially when decisions can be a bit obvious (i.e. rather than overwrite a duplicate file, create a new filename for you just in case, etc). Once you get a feel for using Wincode, try changing this setting to "Medium". Things will go a lot faster and smoother and Wincode will make "safe" decisions for you. Also, don't forget to turn "on" the Create Report Files option - logging what Wincode does will show you the exact decisions it made and why...


Bonus SUM Utility

We have included a small DOS executable which will quickly calculate UNIX sum -r/size checksums. This program is useful for checking the integrity of files that have been transferred over communications lines that are questionable (or, to some extent, checking for virus infections). Wincode supports both line and/or file Checksum checking while decoding and will insert Checksums (line and/or file) while encoding. This utility is provided as a stand-alone DOS program. For program usage, type SUM (with no parameters) at the DOS prompt. The included file CHECKSUM.REF contains the proper checksum values for all of the files in the Wincode package.


Known Limitations and Other Important Notes

Known Limitations

1) Certain video hardware/software combinations (such as ATI cards/drivers) are known to cause irregular displays of various Wincode dialogs. Common symptoms include misaligned text, irregularly spaced progress bars and "absent menus".

2) The Hooking feature is not fully supported by all applications. If you have problems hooking an application, try using the Hook Tuning options. If you experience any other difficulties, please let us know. Please see the Simple Hook Example for more important information.

3) Wincode uses the built-in font MS Sans Serif. Some users have experienced difficulty with the text in the Wincode dialogs. Make sure you have this font properly installed (ships with Windows).

4) Although Wincode can handle System/Hidden files, the Microsoft Common Dialogs do not let you see them. This is not a limitation of Wincode (drag & drop, etc. still works on system/hidden files). We will address this issue in a future release.

These known problems do not affect Wincodes coding functionality.

Note to AOL Users

Here are answers to some common problems experienced by AOL Users:

1) When downloading USENET posts from AOL, be certain that you receive the entire message. You do this by pressing the More... button until it disappears or grays-out. AOL downloads files in 28K chunks and usually does not receive the entire post when you select it. We have been told that the Logging option is the way to go for capturing large files. For more info, please contact the AOL support personnel.

2) If you want to Hook the AOL menu, use "America  Online" as the Application Name (do not include the quotes). The point is that there are two spaces between America and Online.

3) There have been reports of bugs in the AOL v2.5 software auto-decode functions. This may cause problems when receiving encoded files that are large or multi-part. The solution is to disable this feature and use Wincode ;-)

The above AOL problems may or may not affect you. These are solutions we have helped customers with and may not be relevant to your copy of the AOL software. _Snappy_ has no association with America Online.

Also check out the FREE HELP! A few tricks too cool to keep secret ;-) section!

Note to Win95 Users

Wincode is currently targeted for the Win 3.1x (and WFWG) environment. Though it will work under Win95, there may be unforseen problems. We will be updating Wincode in the future to become a true Win95 logo application. However, until then, please bear in mind that Wincode does work without problems under Win 3.1x and that Win95 problems arise from lack of backward compatibility in Win95. This is not to say that these are bugs in Wincode or Win95, but rather that Microsoft had to change certain aspects of Windows which now differ from good old Win 3.1x :-). Some of the problems you may experience may also result from changes in the overall system (i.e. there is no File or Program Manager). The following is the current list of known problems:

1) No support for Long Filenames (yet!).

Please send any other bugs/problems to:

bugs@snappy-software.com

Thanks!


Other _Snappy_ Software

We generally develop utility programs for Windows 3.1x and (soon) Win95. We currently have a handful of programs that we're working on which we will release as FREEWARE. We welcome all ideas for future projects. Please check out our internet site to see what we have to offer!


Copyrights

WINCODE.EXE, WINCODE.HLP, HELPME.HLP, WCENGINE.DLL, WCEHOOK.DLL, WCEFMEXT.DLL, WCHLPKEY.DLL, WCESOCK.EXE, WINSORT.EXE, MACAPPFC.DAT, WCEDCSIG.DAT, WCEMIME.DAT, VSWLINK.EXE, VSDLINK.EXE, VSDLINK.DAT, VSDLINK.PIF, ZIPLINK.EXE, ZIPLINK.PIF, INSTALL.EXE, INSTALL.HLP, INSTALL.INF, UNINSTLL.EXE, SUM.EXE, LICENSE.TXT, README.TXT and README.NOW are ALL copyright © 1993-1996 _Snappy_ software. It is illegal to distribute these programs individually without prior permission from the author. It is also illegal to reverse-compile or alter the executables or associated files in any way. The Snappy Installer (INSTALL.EXE) is provided to insure that all files are distributed together and intact. Copyright information is included within all the executable files (and DLLs) listed above.

The HELP file, WINCODE.HLP, may only be distributed by _Snappy_. Registered users are provided with a key which is unique to their copy of the HELP file. This key should only be used by the registered owner and is non-transferrable. The HELP file should be treated as a book such that only one copy may exist per license at any given time (on any computer) other than a personal backup copy. Just as a book cannot be read/exist in two places at once, the HELP file can only be used on one computer at a time (one copy for each license purchased).

The Wincode package, excluding the registered HELP file (WINCODE.HLP), is provided free of charge to all _Snappy_ friendly individuals. That is, if you like our product, then use it. If for some reason you find the product unusable or in conflict with any personal beliefs (including the beliefs of our company), we ask that you refrain from using all _Snappy_ software and destroy all personal copies. The full terms of our distribution policy are outlined in the License section of this Help file.

By using the Wincode package (any software therein), you agree to the above copyright laws and restrictions.

If you find any bugs, glitches, whatever, we can be reached by e-mail at one of the following addresses (Please remember to include program version information):

Wincode info:      	wincode@snappy-software.com

BUG reports:       	bugs@snappy-software.com

Comments/Feedback: 	feedback@snappy-software.com

If you need help, support, the latest version of Wincode or just want to let us know you like/hate the program, drop us a line. See the above for more info regarding obtaining the most current versions of the software.

Thanks for trying and using _Snappy_ software...

We'd like to thank everyone (you know who you are) who sent encouraging suggestions and comments.

Wincode is a TradeMark of _Snappy_ Software.

Other Copyrights:

All programs listed in the Winsort Supported Formats section of the registered HELP file are copyright their respective owners. They are listed here for reference purposes only. We make no guarantee of their functionality or compatibility with Wincode or Winsort.

 portions of this program are copyright © 1983,1995 Borland

 Windows is a trademark of Microsoft Corporation

 PKZIP/UNZIP are copyright © 1989-1993 PKWARE Inc. All Rights Reserved.

 GIF is a service mark of CompuServe Incorporated

 WordPerfect is a registered trademark of Corel Corporation.

 Procomm Plus for Windows is copyright © 1992-1993 Datastorm Technologies, Inc.

 Star Trek: The Next Generation is a registered trademark of Paramount Pictures

 The Simpsons is trademark and copyright © Twentieth Century Fox Film Corporation. All Rights Reserved.

 Pinky and the Brain is copyright © Amblin Entertainment in association with Warner Bros. Animation

 DOOM is copyright © 1993 Id Software, Inc.

Copyrights or Trademarks referenced in any material accompanying this software but not mentioned above have been omitted in error. _Snappy_ observes and respects all copyrights and trademarks.


License

Wincode is a FREEWARE application. Usage rights are granted under the following Snappy User-Friendly license:

1. _Snappy_ Software ("_Snappy_") grants to you a non-exclusive, non-sublicensable, license to use this version of Wincode: Multi-Purpose Encoder/Decoder for Windows (the "Software"), in binary executable form for personal purposes only.

2. _SNAPPY_ MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THIS SOFTWARE OR ABOUT ANY CONTENT OR INFORMATION MADE ACCESSIBLE BY THE SOFTWARE, FOR ANY PURPOSE.  THE SOFTWARE IS PROVIDED 'AS IS' WITHOUT EXPRESS OR IMPLIED WARRANTIES, INCLUDING WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.  THIS SOFTWARE IS PROVIDED GRATUITOUSLY AND, ACCORDINGLY, _SNAPPY_ SHALL NOT BE LIABLE UNDER ANY THEORY FOR ANY DAMAGES SUFFERED BY YOU OR ANY USER OF THE SOFTWARE.

3. _SNAPPY_ WILL NOT SUPPORT THIS SOFTWARE.  SUPPORT FOR THIS SOFTWARE MAY BE OBTAINED UNDER A SEPARATE LICENSE FOR A ONE-TIME FEE (SEE "HELP OPTION" BELOW).  _SNAPPY_ PROVIDES BASIC FREE DOCUMENTATION ENCLOSED WITH THE SOFTWARE.

4. All content accessed through the Software is the property of the applicable content owner and may be protected by applicable copyright law.  This License gives you no rights to such content.

5. Title, ownership rights, and intellectual property rights in and to the Software shall remain in _Snappy_ and/or its suppliers.  You agree to abide by the copyright law and all other applicable laws of the United States including, but not limited to, export control laws.  You acknowledge that the Software in source code form remains a confidential trade secret of _Snappy_ and/or its suppliers and therefore you agree not to modify the Software or attempt to decipher, decompile, disassemble or reverse engineer the Software, except to the extent applicable laws specifically prohibit such restriction.

6. _Snappy_ reserves the right to alter and/or terminate this License and deny and/or prohibit individuals or corporations from using the Software.  _Snappy_ may terminate this License at any time by delivering notice to you and you may terminate this License at any time by destroying or erasing your copy of the Software.  Upon termination of this License, you agree to destroy or erase the Software.  In the event of termination, all applicable sections of this License will survive.  This License is personal to you and you agree not to assign your rights herein.  This License shall be governed by and construed in accordance with the laws of the State of New York and, as to matters affecting copyrights, trademarks and patents, by U.S. federal law. This License sets forth the entire agreement between you and _Snappy_.

7. _SNAPPY_ OR ITS SUPPLIERS SHALL NOT BE LIABLE FOR (a) INCIDENTAL, CONSEQUENTIAL, SPECIAL OR INDIRECT DAMAGES OF ANY SORT, WHETHER ARISING IN TORT, CONTRACT OR OTHERWISE, EVEN IF _SNAPPY_ HAS BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES, OR (b) FOR ANY CLAIM BY ANY OTHER PARTY. FURTHERMORE, IN STATES THAT DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, YOU MAY NOT USE THIS SOFTWARE.

8. _Snappy_ provides support for the Software in the form of a "Help Option".  The "Help Option" is considered a separate entity governed by a separate License.  It is in no way required for the Software to function.  The "Help Option" is provided separately for a one-time fee.  Online order forms are provided within the Software.  Prices are current to the date indicated and subject to change without notice.  The "Help Option" does not grant further rights to the Software.  A separate License for the "Help Option" is provided at the time of purchase.  _SNAPPY_ IS NOT RESPONSIBLE FOR LOST OR STOLEN ORDERS AND/OR "HELP OPTION" SOFTWARE SHIPMENTS. _SNAPPY_ RESERVES THE RIGHT TO DENY AND/OR LIMIT THE EXTENT OF SUPPORT PROVIDED BY THE "HELP OPTION".

10. THE SOFTWARE IS PROVIDED AS FREEWARE AND YOU MAY DISTRIBUTE IT AS SUCH PROVIDING YOU KEEP THE PROGRAM FILES, THE ASSOCIATED DATA FILES AND THE INTRODUCTORY TEXT FILES IN ORIGINAL INTACT CONDITION.  THE SOFTWARE MAY BE DISTRIBUTED IN SHAREWARE/FREEWARE PACKAGES IN WHICH FEES COVER DUPLICATION/MEDIA COSTS.

11. THIS PROGRAM MAY NOT BE SOLD COMMERCIALLY OR PRIVATELY WITHOUT THE WRITTEN PERMISSION OF _SNAPPY_.

12. THE OPINIONS EXPRESSED OR IMPLIED BY THE SOFTWARE AND/OR _SNAPPY_ ARE THOSE OF _SNAPPY_ ONLY.  _SNAPPY_ RESERVES ALL RIGHTS TO CHANGE AND/OR MODIFY THIS LICENSE.

Wincode is a trademark of _Snappy_ Software.

Copyright 1993-1996 _Snappy_ Software. All rights reserved.